./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/ldv-memsafety/ArraysWithLenghtAtDeclaration_-read.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) 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/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/ldv-memsafety/ArraysWithLenghtAtDeclaration_-read.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-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 valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 9aaf3ef5b6218ff6658a67703b1e3ffb0d16a40e5e7c9a13354b853d6f63747b --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:49:31,277 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:49:31,279 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:49:31,309 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:49:31,309 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:49:31,310 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:49:31,311 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:49:31,313 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:49:31,314 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:49:31,315 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:49:31,315 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:49:31,316 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:49:31,317 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:49:31,318 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:49:31,318 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:49:31,319 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:49:31,320 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:49:31,321 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:49:31,322 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:49:31,324 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:49:31,325 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:49:31,326 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:49:31,326 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:49:31,327 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:49:31,329 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:49:31,329 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:49:31,330 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:49:31,330 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:49:31,331 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:49:31,331 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:49:31,332 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:49:31,332 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:49:31,333 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:49:31,333 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:49:31,334 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:49:31,334 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:49:31,335 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:49:31,335 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:49:31,335 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:49:31,336 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:49:31,336 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:49:31,337 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2022-02-20 23:49:31,350 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:49:31,351 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:49:31,351 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:49:31,351 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:49:31,352 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:49:31,352 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:49:31,352 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:49:31,353 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:49:31,353 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:49:31,353 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:49:31,353 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:49:31,353 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:49:31,354 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:49:31,354 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:49:31,354 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:49:31,354 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:49:31,354 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:49:31,355 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:49:31,355 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:49:31,355 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:49:31,355 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:49:31,355 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:49:31,356 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:49:31,356 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:49:31,356 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:49:31,356 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:49:31,356 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:49:31,356 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:49:31,357 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:49:31,357 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:49:31,357 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 valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) 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 -> 9aaf3ef5b6218ff6658a67703b1e3ffb0d16a40e5e7c9a13354b853d6f63747b [2022-02-20 23:49:31,513 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:49:31,530 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:49:31,532 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:49:31,534 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:49:31,535 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:49:31,536 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-memsafety/ArraysWithLenghtAtDeclaration_-read.c [2022-02-20 23:49:31,582 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d16fdb9b/62db74849579443d9e796a0c117698d6/FLAGfbf4a84f5 [2022-02-20 23:49:31,942 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:49:31,943 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-memsafety/ArraysWithLenghtAtDeclaration_-read.c [2022-02-20 23:49:31,972 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d16fdb9b/62db74849579443d9e796a0c117698d6/FLAGfbf4a84f5 [2022-02-20 23:49:32,391 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4d16fdb9b/62db74849579443d9e796a0c117698d6 [2022-02-20 23:49:32,393 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:49:32,394 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:49:32,395 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:49:32,395 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:49:32,397 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:49:32,398 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,399 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@770438e4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32, skipping insertion in model container [2022-02-20 23:49:32,399 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,403 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:49:32,410 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:49:32,583 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:49:32,593 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:49:32,614 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:49:32,631 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:49:32,632 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32 WrapperNode [2022-02-20 23:49:32,632 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:49:32,634 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:49:32,634 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:49:32,634 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:49:32,643 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,651 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,671 INFO L137 Inliner]: procedures = 8, calls = 14, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 67 [2022-02-20 23:49:32,672 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:49:32,673 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:49:32,673 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:49:32,673 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:49:32,679 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,680 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,681 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,682 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,687 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,690 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,692 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,693 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:49:32,694 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:49:32,694 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:49:32,694 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:49:32,695 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (1/1) ... [2022-02-20 23:49:32,702 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:49:32,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:32,732 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 23:49:32,739 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 23:49:32,768 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:49:32,768 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:49:32,769 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:49:32,769 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:49:32,769 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:49:32,770 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:49:32,824 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:49:32,826 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:49:32,996 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:49:33,001 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:49:33,002 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 23:49:33,003 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:49:33 BoogieIcfgContainer [2022-02-20 23:49:33,003 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:49:33,004 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:49:33,004 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:49:33,006 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:49:33,007 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:49:32" (1/3) ... [2022-02-20 23:49:33,007 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fe00f69 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:49:33, skipping insertion in model container [2022-02-20 23:49:33,007 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:49:32" (2/3) ... [2022-02-20 23:49:33,008 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fe00f69 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:49:33, skipping insertion in model container [2022-02-20 23:49:33,008 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:49:33" (3/3) ... [2022-02-20 23:49:33,009 INFO L111 eAbstractionObserver]: Analyzing ICFG ArraysWithLenghtAtDeclaration_-read.c [2022-02-20 23:49:33,012 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:49:33,012 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 8 error locations. [2022-02-20 23:49:33,039 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:49:33,044 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=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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 23:49:33,044 INFO L340 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2022-02-20 23:49:33,054 INFO L276 IsEmpty]: Start isEmpty. Operand has 31 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 30 states have internal predecessors, (37), 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 23:49:33,059 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:49:33,060 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:33,060 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:49:33,060 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:33,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:33,064 INFO L85 PathProgramCache]: Analyzing trace with hash 28698920, now seen corresponding path program 1 times [2022-02-20 23:49:33,071 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:33,071 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [625206839] [2022-02-20 23:49:33,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:33,072 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:33,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:33,281 INFO L290 TraceCheckUtils]: 0: Hoare triple {34#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {34#true} is VALID [2022-02-20 23:49:33,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {34#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {34#true} is VALID [2022-02-20 23:49:33,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {36#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:33,288 INFO L290 TraceCheckUtils]: 3: Hoare triple {36#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {36#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:33,290 INFO L290 TraceCheckUtils]: 4: Hoare triple {36#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {35#false} is VALID [2022-02-20 23:49:33,291 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 23:49:33,291 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:33,292 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [625206839] [2022-02-20 23:49:33,292 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [625206839] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:33,293 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:33,293 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:49:33,295 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1129076210] [2022-02-20 23:49:33,295 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:33,299 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 5 [2022-02-20 23:49:33,300 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:33,303 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 23:49:33,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,314 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:49:33,314 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:33,339 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:49:33,339 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:33,342 INFO L87 Difference]: Start difference. First operand has 31 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 30 states have internal predecessors, (37), 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 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 23:49:33,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,460 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:49:33,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:33,460 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 5 [2022-02-20 23:49:33,460 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:33,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 23:49:33,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 72 transitions. [2022-02-20 23:49:33,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 23:49:33,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 72 transitions. [2022-02-20 23:49:33,476 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 72 transitions. [2022-02-20 23:49:33,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,553 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:49:33,553 INFO L226 Difference]: Without dead ends: 55 [2022-02-20 23:49:33,559 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:33,561 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 28 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:33,562 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 66 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:33,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-02-20 23:49:33,578 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 31. [2022-02-20 23:49:33,580 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:33,581 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 23:49:33,581 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 23:49:33,582 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 23:49:33,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,590 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-02-20 23:49:33,590 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-02-20 23:49:33,591 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,591 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,591 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 55 states. [2022-02-20 23:49:33,593 INFO L87 Difference]: Start difference. First operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 55 states. [2022-02-20 23:49:33,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,598 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-02-20 23:49:33,598 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-02-20 23:49:33,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:33,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:33,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 30 states have internal predecessors, (35), 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 23:49:33,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2022-02-20 23:49:33,603 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 5 [2022-02-20 23:49:33,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:33,604 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2022-02-20 23:49:33,604 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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 23:49:33,604 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2022-02-20 23:49:33,605 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:49:33,605 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:33,605 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:49:33,606 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:49:33,606 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:33,607 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:33,607 INFO L85 PathProgramCache]: Analyzing trace with hash 889631015, now seen corresponding path program 1 times [2022-02-20 23:49:33,607 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:33,607 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1519113416] [2022-02-20 23:49:33,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:33,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:33,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:33,635 INFO L290 TraceCheckUtils]: 0: Hoare triple {239#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {239#true} is VALID [2022-02-20 23:49:33,635 INFO L290 TraceCheckUtils]: 1: Hoare triple {239#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {241#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:33,636 INFO L290 TraceCheckUtils]: 2: Hoare triple {241#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(main_~i~1#1 % 4294967296 < 32); {240#false} is VALID [2022-02-20 23:49:33,636 INFO L290 TraceCheckUtils]: 3: Hoare triple {240#false} main_~i~1#1 := 0; {240#false} is VALID [2022-02-20 23:49:33,637 INFO L290 TraceCheckUtils]: 4: Hoare triple {240#false} assume !!(main_~i~1#1 % 4294967296 < 32); {240#false} is VALID [2022-02-20 23:49:33,637 INFO L290 TraceCheckUtils]: 5: Hoare triple {240#false} assume !(1 == #valid[main_~#b~0#1.base]); {240#false} is VALID [2022-02-20 23:49:33,637 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 23:49:33,637 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:33,638 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1519113416] [2022-02-20 23:49:33,638 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1519113416] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:33,638 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:33,638 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:49:33,638 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [856466905] [2022-02-20 23:49:33,638 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:33,639 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:33,640 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:33,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 23:49:33,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,645 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:49:33,645 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:33,645 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:49:33,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:33,646 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 23:49:33,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,700 INFO L93 Difference]: Finished difference Result 58 states and 64 transitions. [2022-02-20 23:49:33,700 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:33,700 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:33,700 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:33,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 23:49:33,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2022-02-20 23:49:33,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 23:49:33,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2022-02-20 23:49:33,703 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2022-02-20 23:49:33,745 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,746 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:49:33,746 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 23:49:33,747 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:49:33,748 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 24 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:33,748 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:33,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 23:49:33,751 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 33. [2022-02-20 23:49:33,751 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:33,751 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:33,751 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:33,752 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:33,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,754 INFO L93 Difference]: Finished difference Result 58 states and 64 transitions. [2022-02-20 23:49:33,754 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 64 transitions. [2022-02-20 23:49:33,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,755 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 58 states. [2022-02-20 23:49:33,755 INFO L87 Difference]: Start difference. First operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 58 states. [2022-02-20 23:49:33,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,757 INFO L93 Difference]: Finished difference Result 58 states and 64 transitions. [2022-02-20 23:49:33,757 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 64 transitions. [2022-02-20 23:49:33,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,758 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:33,758 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:33,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 25 states have (on average 1.48) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:33,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-02-20 23:49:33,759 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 6 [2022-02-20 23:49:33,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:33,760 INFO L470 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-02-20 23:49:33,760 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 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 23:49:33,760 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-02-20 23:49:33,760 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:49:33,761 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:33,761 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:49:33,761 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:49:33,761 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:33,762 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:33,762 INFO L85 PathProgramCache]: Analyzing trace with hash 889666573, now seen corresponding path program 1 times [2022-02-20 23:49:33,762 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:33,762 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1079969345] [2022-02-20 23:49:33,762 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:33,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:33,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:33,795 INFO L290 TraceCheckUtils]: 0: Hoare triple {451#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {451#true} is VALID [2022-02-20 23:49:33,797 INFO L290 TraceCheckUtils]: 1: Hoare triple {451#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {453#(= (select |#valid| |ULTIMATE.start_main_~#mask~0#1.base|) 1)} is VALID [2022-02-20 23:49:33,797 INFO L290 TraceCheckUtils]: 2: Hoare triple {453#(= (select |#valid| |ULTIMATE.start_main_~#mask~0#1.base|) 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} is VALID [2022-02-20 23:49:33,798 INFO L290 TraceCheckUtils]: 3: Hoare triple {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} is VALID [2022-02-20 23:49:33,798 INFO L290 TraceCheckUtils]: 4: Hoare triple {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} is VALID [2022-02-20 23:49:33,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {454#(= (select |#valid| |ULTIMATE.start_foo_~b#1.base|) 1)} assume !(1 == #valid[foo_~b#1.base]); {452#false} is VALID [2022-02-20 23:49:33,799 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 23:49:33,799 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:33,799 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1079969345] [2022-02-20 23:49:33,799 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1079969345] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:33,800 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:33,800 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:49:33,800 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [232164655] [2022-02-20 23:49:33,800 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:33,801 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:33,801 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:33,801 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,806 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:33,806 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:33,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:33,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:33,807 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,860 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-02-20 23:49:33,860 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:49:33,860 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:33,861 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:33,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 33 transitions. [2022-02-20 23:49:33,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 33 transitions. [2022-02-20 23:49:33,862 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 33 transitions. [2022-02-20 23:49:33,889 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,890 INFO L225 Difference]: With dead ends: 32 [2022-02-20 23:49:33,890 INFO L226 Difference]: Without dead ends: 32 [2022-02-20 23:49:33,891 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:33,892 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 49 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 22 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:33,893 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 22 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:33,893 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-02-20 23:49:33,895 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-02-20 23:49:33,895 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:33,895 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 23:49:33,896 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 23:49:33,896 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 23:49:33,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,897 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-02-20 23:49:33,898 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-02-20 23:49:33,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,898 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 32 states. [2022-02-20 23:49:33,899 INFO L87 Difference]: Start difference. First operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 32 states. [2022-02-20 23:49:33,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:33,900 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-02-20 23:49:33,900 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-02-20 23:49:33,901 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:33,901 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:33,901 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:33,901 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:33,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 25 states have (on average 1.44) internal successors, (36), 31 states have internal predecessors, (36), 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 23:49:33,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2022-02-20 23:49:33,903 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 36 transitions. Word has length 6 [2022-02-20 23:49:33,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:33,903 INFO L470 AbstractCegarLoop]: Abstraction has 32 states and 36 transitions. [2022-02-20 23:49:33,903 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,904 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-02-20 23:49:33,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:49:33,904 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:33,904 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:49:33,905 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:49:33,905 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:33,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:33,906 INFO L85 PathProgramCache]: Analyzing trace with hash 889666574, now seen corresponding path program 1 times [2022-02-20 23:49:33,906 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:33,906 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [444768493] [2022-02-20 23:49:33,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:33,907 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:33,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:33,970 INFO L290 TraceCheckUtils]: 0: Hoare triple {587#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {587#true} is VALID [2022-02-20 23:49:33,972 INFO L290 TraceCheckUtils]: 1: Hoare triple {587#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {589#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:33,972 INFO L290 TraceCheckUtils]: 2: Hoare triple {589#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:33,973 INFO L290 TraceCheckUtils]: 3: Hoare triple {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:33,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:33,974 INFO L290 TraceCheckUtils]: 5: Hoare triple {590#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {588#false} is VALID [2022-02-20 23:49:33,974 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 23:49:33,975 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:33,975 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [444768493] [2022-02-20 23:49:33,975 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [444768493] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:33,975 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:33,975 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:49:33,976 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1078976028] [2022-02-20 23:49:33,976 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:33,976 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:33,976 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:33,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:33,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:33,982 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:33,982 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:33,982 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:33,983 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:33,983 INFO L87 Difference]: Start difference. First operand 32 states and 36 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:34,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,087 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-02-20 23:49:34,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:49:34,087 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 6 [2022-02-20 23:49:34,087 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:34,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:34,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-02-20 23:49:34,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:34,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-02-20 23:49:34,089 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 59 transitions. [2022-02-20 23:49:34,135 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:34,136 INFO L225 Difference]: With dead ends: 55 [2022-02-20 23:49:34,136 INFO L226 Difference]: Without dead ends: 55 [2022-02-20 23:49:34,136 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:34,137 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 69 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 32 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:34,137 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 32 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:34,138 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-02-20 23:49:34,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 33. [2022-02-20 23:49:34,139 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:34,139 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:34,140 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:34,140 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:34,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,141 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-02-20 23:49:34,141 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-02-20 23:49:34,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:34,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:34,142 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 55 states. [2022-02-20 23:49:34,142 INFO L87 Difference]: Start difference. First operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 55 states. [2022-02-20 23:49:34,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,143 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2022-02-20 23:49:34,144 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2022-02-20 23:49:34,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:34,144 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:34,144 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:34,144 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:34,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 26 states have (on average 1.4230769230769231) internal successors, (37), 32 states have internal predecessors, (37), 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 23:49:34,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-02-20 23:49:34,146 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 6 [2022-02-20 23:49:34,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:34,146 INFO L470 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-02-20 23:49:34,146 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 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 23:49:34,146 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-02-20 23:49:34,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:49:34,147 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:34,147 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:34,147 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:49:34,147 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:34,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:34,148 INFO L85 PathProgramCache]: Analyzing trace with hash 1809810359, now seen corresponding path program 1 times [2022-02-20 23:49:34,148 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:34,148 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610778918] [2022-02-20 23:49:34,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:34,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:34,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:34,189 INFO L290 TraceCheckUtils]: 0: Hoare triple {793#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {793#true} is VALID [2022-02-20 23:49:34,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {793#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {795#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:34,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {796#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:34,191 INFO L290 TraceCheckUtils]: 3: Hoare triple {796#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {794#false} is VALID [2022-02-20 23:49:34,191 INFO L290 TraceCheckUtils]: 4: Hoare triple {794#false} foo_#res#1 := foo_~i~0#1; {794#false} is VALID [2022-02-20 23:49:34,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {794#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {794#false} is VALID [2022-02-20 23:49:34,191 INFO L290 TraceCheckUtils]: 6: Hoare triple {794#false} assume !(1 == #valid[main_~#b~0#1.base]); {794#false} is VALID [2022-02-20 23:49:34,192 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 23:49:34,192 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:34,192 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1610778918] [2022-02-20 23:49:34,192 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1610778918] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:34,192 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:34,192 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:34,193 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1784883384] [2022-02-20 23:49:34,193 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:34,193 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 7 [2022-02-20 23:49:34,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:34,193 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 23:49:34,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:34,198 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:34,199 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:34,199 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:34,199 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:34,199 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 23:49:34,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,287 INFO L93 Difference]: Finished difference Result 60 states and 65 transitions. [2022-02-20 23:49:34,287 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:49:34,288 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 7 [2022-02-20 23:49:34,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:34,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 23:49:34,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:49:34,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 23:49:34,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:49:34,290 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 62 transitions. [2022-02-20 23:49:34,337 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:34,338 INFO L225 Difference]: With dead ends: 60 [2022-02-20 23:49:34,338 INFO L226 Difference]: Without dead ends: 60 [2022-02-20 23:49:34,338 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:34,339 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 31 mSDsluCounter, 29 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:34,340 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 45 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:34,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-02-20 23:49:34,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 34. [2022-02-20 23:49:34,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:34,342 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 23:49:34,342 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 23:49:34,342 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 23:49:34,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,343 INFO L93 Difference]: Finished difference Result 60 states and 65 transitions. [2022-02-20 23:49:34,343 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 65 transitions. [2022-02-20 23:49:34,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:34,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:34,344 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 60 states. [2022-02-20 23:49:34,344 INFO L87 Difference]: Start difference. First operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 60 states. [2022-02-20 23:49:34,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,346 INFO L93 Difference]: Finished difference Result 60 states and 65 transitions. [2022-02-20 23:49:34,346 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 65 transitions. [2022-02-20 23:49:34,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:34,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:34,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:34,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:34,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 27 states have (on average 1.4074074074074074) internal successors, (38), 33 states have internal predecessors, (38), 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 23:49:34,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-02-20 23:49:34,347 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 7 [2022-02-20 23:49:34,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:34,348 INFO L470 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-02-20 23:49:34,348 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 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 23:49:34,348 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-02-20 23:49:34,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:49:34,348 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:34,348 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:34,349 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:49:34,349 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:34,349 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:34,349 INFO L85 PathProgramCache]: Analyzing trace with hash -1480744241, now seen corresponding path program 1 times [2022-02-20 23:49:34,349 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:34,350 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1681984788] [2022-02-20 23:49:34,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:34,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:34,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:34,386 INFO L290 TraceCheckUtils]: 0: Hoare triple {1015#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1015#true} is VALID [2022-02-20 23:49:34,386 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1015#true} is VALID [2022-02-20 23:49:34,386 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,387 INFO L290 TraceCheckUtils]: 3: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,387 INFO L290 TraceCheckUtils]: 4: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,388 INFO L290 TraceCheckUtils]: 6: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,389 INFO L290 TraceCheckUtils]: 8: Hoare triple {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,389 INFO L290 TraceCheckUtils]: 9: Hoare triple {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {1016#false} is VALID [2022-02-20 23:49:34,390 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:34,390 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:34,390 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1681984788] [2022-02-20 23:49:34,390 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1681984788] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:34,390 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2037170092] [2022-02-20 23:49:34,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:34,391 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:34,391 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:34,408 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 23:49:34,431 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 23:49:34,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:34,449 INFO L263 TraceCheckSpWp]: Trace formula consists of 67 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:49:34,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:34,456 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:34,526 INFO L290 TraceCheckUtils]: 0: Hoare triple {1015#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1015#true} is VALID [2022-02-20 23:49:34,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1015#true} is VALID [2022-02-20 23:49:34,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,527 INFO L290 TraceCheckUtils]: 3: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,527 INFO L290 TraceCheckUtils]: 4: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,528 INFO L290 TraceCheckUtils]: 6: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:34,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {1017#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {1018#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {1016#false} is VALID [2022-02-20 23:49:34,530 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:34,530 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:34,642 INFO L290 TraceCheckUtils]: 9: Hoare triple {1049#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {1016#false} is VALID [2022-02-20 23:49:34,643 INFO L290 TraceCheckUtils]: 8: Hoare triple {1049#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1049#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1049#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:34,644 INFO L290 TraceCheckUtils]: 6: Hoare triple {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:34,645 INFO L290 TraceCheckUtils]: 5: Hoare triple {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:34,645 INFO L290 TraceCheckUtils]: 4: Hoare triple {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:34,646 INFO L290 TraceCheckUtils]: 3: Hoare triple {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:34,646 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1056#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:34,646 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1015#true} is VALID [2022-02-20 23:49:34,647 INFO L290 TraceCheckUtils]: 0: Hoare triple {1015#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1015#true} is VALID [2022-02-20 23:49:34,647 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:34,647 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2037170092] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:34,647 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:34,647 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 5 [2022-02-20 23:49:34,648 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [269116774] [2022-02-20 23:49:34,648 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:34,648 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 10 [2022-02-20 23:49:34,648 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:34,648 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 23:49:34,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:34,661 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:34,661 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:34,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:34,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:34,662 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 23:49:34,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:34,868 INFO L93 Difference]: Finished difference Result 130 states and 145 transitions. [2022-02-20 23:49:34,868 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:49:34,868 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 10 [2022-02-20 23:49:34,868 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:34,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 23:49:34,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 141 transitions. [2022-02-20 23:49:34,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 23:49:34,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 141 transitions. [2022-02-20 23:49:34,871 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 141 transitions. [2022-02-20 23:49:35,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:35,003 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:49:35,003 INFO L226 Difference]: Without dead ends: 130 [2022-02-20 23:49:35,004 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 16 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:49:35,004 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 121 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 121 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:35,005 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [121 Valid, 147 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:35,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-02-20 23:49:35,008 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 48. [2022-02-20 23:49:35,008 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:35,008 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 23:49:35,008 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 23:49:35,008 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 23:49:35,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:35,011 INFO L93 Difference]: Finished difference Result 130 states and 145 transitions. [2022-02-20 23:49:35,011 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 145 transitions. [2022-02-20 23:49:35,011 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:35,011 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:35,011 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 130 states. [2022-02-20 23:49:35,012 INFO L87 Difference]: Start difference. First operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 130 states. [2022-02-20 23:49:35,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:35,014 INFO L93 Difference]: Finished difference Result 130 states and 145 transitions. [2022-02-20 23:49:35,014 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 145 transitions. [2022-02-20 23:49:35,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:35,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:35,015 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:35,015 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:35,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 47 states have internal predecessors, (57), 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 23:49:35,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 57 transitions. [2022-02-20 23:49:35,016 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 57 transitions. Word has length 10 [2022-02-20 23:49:35,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:35,016 INFO L470 AbstractCegarLoop]: Abstraction has 48 states and 57 transitions. [2022-02-20 23:49:35,017 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 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 23:49:35,017 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 57 transitions. [2022-02-20 23:49:35,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:49:35,017 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:35,017 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:35,059 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 23:49:35,235 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,SelfDestructingSolverStorable5 [2022-02-20 23:49:35,235 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:35,235 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:35,236 INFO L85 PathProgramCache]: Analyzing trace with hash 1341568839, now seen corresponding path program 1 times [2022-02-20 23:49:35,236 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:35,236 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1212939638] [2022-02-20 23:49:35,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:35,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:35,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:35,330 INFO L290 TraceCheckUtils]: 0: Hoare triple {1517#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1517#true} is VALID [2022-02-20 23:49:35,331 INFO L290 TraceCheckUtils]: 1: Hoare triple {1517#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1519#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:35,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {1519#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,333 INFO L290 TraceCheckUtils]: 3: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,333 INFO L290 TraceCheckUtils]: 4: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,334 INFO L290 TraceCheckUtils]: 6: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1521#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {1521#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1521#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,335 INFO L290 TraceCheckUtils]: 9: Hoare triple {1521#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1522#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,336 INFO L290 TraceCheckUtils]: 10: Hoare triple {1522#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|) (<= (+ |ULTIMATE.start_foo_~i~0#1| 31) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {1518#false} is VALID [2022-02-20 23:49:35,336 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:35,336 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:35,336 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1212939638] [2022-02-20 23:49:35,337 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1212939638] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:35,337 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1442096418] [2022-02-20 23:49:35,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:35,337 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:35,337 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:35,338 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 23:49:35,339 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 23:49:35,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:35,372 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:49:35,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:35,381 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:35,468 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:49:35,469 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:49:35,636 INFO L290 TraceCheckUtils]: 0: Hoare triple {1517#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1517#true} is VALID [2022-02-20 23:49:35,638 INFO L290 TraceCheckUtils]: 1: Hoare triple {1517#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1519#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:35,638 INFO L290 TraceCheckUtils]: 2: Hoare triple {1519#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,639 INFO L290 TraceCheckUtils]: 3: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,639 INFO L290 TraceCheckUtils]: 4: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,643 INFO L290 TraceCheckUtils]: 5: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,644 INFO L290 TraceCheckUtils]: 6: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {1520#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,646 INFO L290 TraceCheckUtils]: 8: Hoare triple {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,646 INFO L290 TraceCheckUtils]: 9: Hoare triple {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,647 INFO L290 TraceCheckUtils]: 10: Hoare triple {1547#(and (= (+ (- 1) |ULTIMATE.start_foo_~i~0#1|) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {1518#false} is VALID [2022-02-20 23:49:35,647 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:35,647 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:35,808 INFO L290 TraceCheckUtils]: 10: Hoare triple {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {1518#false} is VALID [2022-02-20 23:49:35,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {1557#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:35,811 INFO L290 TraceCheckUtils]: 6: Hoare triple {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:35,811 INFO L290 TraceCheckUtils]: 5: Hoare triple {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:35,813 INFO L290 TraceCheckUtils]: 4: Hoare triple {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:35,813 INFO L290 TraceCheckUtils]: 3: Hoare triple {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:35,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {1583#(and (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 1)) (<= (+ 2 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {1567#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:35,815 INFO L290 TraceCheckUtils]: 1: Hoare triple {1517#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {1583#(and (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 1)) (<= (+ 2 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:35,815 INFO L290 TraceCheckUtils]: 0: Hoare triple {1517#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1517#true} is VALID [2022-02-20 23:49:35,815 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:35,815 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1442096418] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:35,815 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:35,815 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 4, 4] total 9 [2022-02-20 23:49:35,816 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1344251388] [2022-02-20 23:49:35,816 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:35,816 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:35,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:35,816 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:35,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:35,834 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:49:35,834 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:35,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:49:35,834 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=61, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:49:35,834 INFO L87 Difference]: Start difference. First operand 48 states and 57 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:36,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:36,236 INFO L93 Difference]: Finished difference Result 129 states and 144 transitions. [2022-02-20 23:49:36,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:49:36,236 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:36,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:36,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:36,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 140 transitions. [2022-02-20 23:49:36,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:36,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 140 transitions. [2022-02-20 23:49:36,239 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 140 transitions. [2022-02-20 23:49:36,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:36,353 INFO L225 Difference]: With dead ends: 129 [2022-02-20 23:49:36,353 INFO L226 Difference]: Without dead ends: 129 [2022-02-20 23:49:36,353 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=73, Invalid=137, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:49:36,353 INFO L933 BasicCegarLoop]: 29 mSDtfsCounter, 243 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 124 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 124 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:36,354 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [243 Valid, 117 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 124 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:36,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-02-20 23:49:36,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 49. [2022-02-20 23:49:36,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:36,356 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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 23:49:36,356 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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 23:49:36,356 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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 23:49:36,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:36,359 INFO L93 Difference]: Finished difference Result 129 states and 144 transitions. [2022-02-20 23:49:36,359 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 144 transitions. [2022-02-20 23:49:36,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:36,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:36,359 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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) Second operand 129 states. [2022-02-20 23:49:36,360 INFO L87 Difference]: Start difference. First operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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) Second operand 129 states. [2022-02-20 23:49:36,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:36,362 INFO L93 Difference]: Finished difference Result 129 states and 144 transitions. [2022-02-20 23:49:36,362 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 144 transitions. [2022-02-20 23:49:36,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:36,363 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:36,363 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:36,363 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:36,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 42 states have (on average 1.3333333333333333) internal successors, (56), 48 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 23:49:36,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 56 transitions. [2022-02-20 23:49:36,364 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 56 transitions. Word has length 11 [2022-02-20 23:49:36,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:36,364 INFO L470 AbstractCegarLoop]: Abstraction has 49 states and 56 transitions. [2022-02-20 23:49:36,364 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 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 23:49:36,364 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 56 transitions. [2022-02-20 23:49:36,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:49:36,365 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:36,365 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:36,393 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 23:49:36,581 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,SelfDestructingSolverStorable6 [2022-02-20 23:49:36,582 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:36,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:36,582 INFO L85 PathProgramCache]: Analyzing trace with hash -1361088610, now seen corresponding path program 1 times [2022-02-20 23:49:36,582 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:36,582 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1517201383] [2022-02-20 23:49:36,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:36,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:36,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:36,621 INFO L290 TraceCheckUtils]: 0: Hoare triple {2035#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2035#true} is VALID [2022-02-20 23:49:36,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {2035#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2037#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:36,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {2037#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:36,622 INFO L290 TraceCheckUtils]: 3: Hoare triple {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:36,623 INFO L290 TraceCheckUtils]: 4: Hoare triple {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:36,623 INFO L290 TraceCheckUtils]: 5: Hoare triple {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:36,624 INFO L290 TraceCheckUtils]: 6: Hoare triple {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:36,624 INFO L290 TraceCheckUtils]: 7: Hoare triple {2038#(and (= |ULTIMATE.start_foo_~size#1| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2039#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:36,625 INFO L290 TraceCheckUtils]: 8: Hoare triple {2039#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2036#false} is VALID [2022-02-20 23:49:36,625 INFO L290 TraceCheckUtils]: 9: Hoare triple {2036#false} foo_#res#1 := foo_~i~0#1; {2036#false} is VALID [2022-02-20 23:49:36,625 INFO L290 TraceCheckUtils]: 10: Hoare triple {2036#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2036#false} is VALID [2022-02-20 23:49:36,625 INFO L290 TraceCheckUtils]: 11: Hoare triple {2036#false} assume !(1 == #valid[main_~#b~0#1.base]); {2036#false} is VALID [2022-02-20 23:49:36,625 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 23:49:36,625 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:36,625 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1517201383] [2022-02-20 23:49:36,626 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1517201383] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:36,626 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1581781764] [2022-02-20 23:49:36,626 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:36,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:36,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:36,640 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 23:49:36,653 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 23:49:36,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:36,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:49:36,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:36,742 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:36,881 INFO L290 TraceCheckUtils]: 0: Hoare triple {2035#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2035#true} is VALID [2022-02-20 23:49:36,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {2035#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2046#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:36,882 INFO L290 TraceCheckUtils]: 2: Hoare triple {2046#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,882 INFO L290 TraceCheckUtils]: 3: Hoare triple {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,883 INFO L290 TraceCheckUtils]: 4: Hoare triple {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,884 INFO L290 TraceCheckUtils]: 5: Hoare triple {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,884 INFO L290 TraceCheckUtils]: 6: Hoare triple {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {2050#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 0 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2066#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 0 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:36,885 INFO L290 TraceCheckUtils]: 8: Hoare triple {2066#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 0 |ULTIMATE.start_foo_~size#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2036#false} is VALID [2022-02-20 23:49:36,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {2036#false} foo_#res#1 := foo_~i~0#1; {2036#false} is VALID [2022-02-20 23:49:36,886 INFO L290 TraceCheckUtils]: 10: Hoare triple {2036#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2036#false} is VALID [2022-02-20 23:49:36,886 INFO L290 TraceCheckUtils]: 11: Hoare triple {2036#false} assume !(1 == #valid[main_~#b~0#1.base]); {2036#false} is VALID [2022-02-20 23:49:36,887 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 23:49:36,887 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:36,968 INFO L290 TraceCheckUtils]: 11: Hoare triple {2036#false} assume !(1 == #valid[main_~#b~0#1.base]); {2036#false} is VALID [2022-02-20 23:49:36,969 INFO L290 TraceCheckUtils]: 10: Hoare triple {2036#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2036#false} is VALID [2022-02-20 23:49:36,975 INFO L290 TraceCheckUtils]: 9: Hoare triple {2036#false} foo_#res#1 := foo_~i~0#1; {2036#false} is VALID [2022-02-20 23:49:36,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {2088#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2036#false} is VALID [2022-02-20 23:49:36,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2088#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:49:36,979 INFO L290 TraceCheckUtils]: 6: Hoare triple {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:36,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:36,980 INFO L290 TraceCheckUtils]: 4: Hoare triple {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:36,980 INFO L290 TraceCheckUtils]: 3: Hoare triple {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:36,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {2046#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2092#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:36,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {2035#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2046#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:36,982 INFO L290 TraceCheckUtils]: 0: Hoare triple {2035#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2035#true} is VALID [2022-02-20 23:49:36,982 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 23:49:36,982 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1581781764] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:36,982 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:36,982 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 23:49:36,982 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1413223522] [2022-02-20 23:49:36,983 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:36,983 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 12 [2022-02-20 23:49:36,983 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:36,984 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 23:49:37,000 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:37,000 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:49:37,000 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:37,001 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:49:37,001 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:49:37,001 INFO L87 Difference]: Start difference. First operand 49 states and 56 transitions. Second operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 23:49:37,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,252 INFO L93 Difference]: Finished difference Result 88 states and 96 transitions. [2022-02-20 23:49:37,252 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:49:37,252 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 12 [2022-02-20 23:49:37,253 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:37,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 23:49:37,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 79 transitions. [2022-02-20 23:49:37,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 23:49:37,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 79 transitions. [2022-02-20 23:49:37,256 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 79 transitions. [2022-02-20 23:49:37,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:37,312 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:49:37,312 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 23:49:37,312 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:49:37,314 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 127 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 127 SdHoareTripleChecker+Valid, 52 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:37,314 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [127 Valid, 52 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:37,315 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 23:49:37,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 48. [2022-02-20 23:49:37,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:37,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 23:49:37,317 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 23:49:37,318 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 23:49:37,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,320 INFO L93 Difference]: Finished difference Result 88 states and 96 transitions. [2022-02-20 23:49:37,320 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 96 transitions. [2022-02-20 23:49:37,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,320 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 88 states. [2022-02-20 23:49:37,321 INFO L87 Difference]: Start difference. First operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 88 states. [2022-02-20 23:49:37,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,322 INFO L93 Difference]: Finished difference Result 88 states and 96 transitions. [2022-02-20 23:49:37,322 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 96 transitions. [2022-02-20 23:49:37,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,323 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:37,323 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:37,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 47 states have internal predecessors, (53), 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 23:49:37,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 53 transitions. [2022-02-20 23:49:37,324 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 53 transitions. Word has length 12 [2022-02-20 23:49:37,325 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:37,325 INFO L470 AbstractCegarLoop]: Abstraction has 48 states and 53 transitions. [2022-02-20 23:49:37,325 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.7) internal successors, (27), 10 states have internal predecessors, (27), 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 23:49:37,325 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 53 transitions. [2022-02-20 23:49:37,325 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:49:37,325 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:37,326 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:37,358 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 23:49:37,539 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:37,540 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:37,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:37,540 INFO L85 PathProgramCache]: Analyzing trace with hash 4840471, now seen corresponding path program 2 times [2022-02-20 23:49:37,540 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:37,540 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [180124787] [2022-02-20 23:49:37,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:37,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:37,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:37,615 INFO L290 TraceCheckUtils]: 0: Hoare triple {2437#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2437#true} is VALID [2022-02-20 23:49:37,616 INFO L290 TraceCheckUtils]: 1: Hoare triple {2437#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2439#(or (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} is VALID [2022-02-20 23:49:37,616 INFO L290 TraceCheckUtils]: 2: Hoare triple {2439#(or (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} is VALID [2022-02-20 23:49:37,617 INFO L290 TraceCheckUtils]: 3: Hoare triple {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} is VALID [2022-02-20 23:49:37,617 INFO L290 TraceCheckUtils]: 4: Hoare triple {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} is VALID [2022-02-20 23:49:37,617 INFO L290 TraceCheckUtils]: 5: Hoare triple {2440#(or (= |ULTIMATE.start_foo_~b#1.base| |ULTIMATE.start_main_~#b~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,618 INFO L290 TraceCheckUtils]: 6: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,618 INFO L290 TraceCheckUtils]: 7: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,618 INFO L290 TraceCheckUtils]: 8: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,619 INFO L290 TraceCheckUtils]: 9: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,619 INFO L290 TraceCheckUtils]: 10: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,619 INFO L290 TraceCheckUtils]: 11: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,620 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,620 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,620 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} foo_#res#1 := foo_~i~0#1; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,621 INFO L290 TraceCheckUtils]: 15: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} is VALID [2022-02-20 23:49:37,621 INFO L290 TraceCheckUtils]: 16: Hoare triple {2441#(= (select |#valid| |ULTIMATE.start_main_~#b~0#1.base|) 1)} assume !(1 == #valid[main_~#b~0#1.base]); {2438#false} is VALID [2022-02-20 23:49:37,621 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 23:49:37,621 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:37,621 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [180124787] [2022-02-20 23:49:37,622 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [180124787] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:37,622 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:37,622 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:37,622 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2049706252] [2022-02-20 23:49:37,622 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:37,622 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 17 [2022-02-20 23:49:37,622 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:37,623 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 23:49:37,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:37,632 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:49:37,632 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:37,633 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:49:37,633 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:37,633 INFO L87 Difference]: Start difference. First operand 48 states and 53 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 23:49:37,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,673 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-02-20 23:49:37,673 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:37,673 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 17 [2022-02-20 23:49:37,674 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:37,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 23:49:37,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 31 transitions. [2022-02-20 23:49:37,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 23:49:37,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 31 transitions. [2022-02-20 23:49:37,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 31 transitions. [2022-02-20 23:49:37,694 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:37,694 INFO L225 Difference]: With dead ends: 46 [2022-02-20 23:49:37,694 INFO L226 Difference]: Without dead ends: 46 [2022-02-20 23:49:37,695 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:37,695 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 61 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 22 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:37,695 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [61 Valid, 22 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:37,696 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-02-20 23:49:37,697 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-02-20 23:49:37,697 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:37,697 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 23:49:37,697 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 23:49:37,698 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 23:49:37,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,698 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-02-20 23:49:37,698 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-02-20 23:49:37,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,699 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 46 states. [2022-02-20 23:49:37,699 INFO L87 Difference]: Start difference. First operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 46 states. [2022-02-20 23:49:37,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,700 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-02-20 23:49:37,700 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-02-20 23:49:37,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,700 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:37,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:37,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 41 states have (on average 1.2439024390243902) internal successors, (51), 45 states have internal predecessors, (51), 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 23:49:37,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 51 transitions. [2022-02-20 23:49:37,702 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 51 transitions. Word has length 17 [2022-02-20 23:49:37,702 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:37,702 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 51 transitions. [2022-02-20 23:49:37,702 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 23:49:37,702 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-02-20 23:49:37,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:49:37,702 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:37,703 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:37,703 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:49:37,703 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:37,703 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:37,703 INFO L85 PathProgramCache]: Analyzing trace with hash 4840472, now seen corresponding path program 1 times [2022-02-20 23:49:37,703 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:37,704 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1548296530] [2022-02-20 23:49:37,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:37,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:37,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:37,755 INFO L290 TraceCheckUtils]: 0: Hoare triple {2628#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2628#true} is VALID [2022-02-20 23:49:37,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {2628#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2630#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {2630#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,757 INFO L290 TraceCheckUtils]: 3: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,757 INFO L290 TraceCheckUtils]: 4: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,758 INFO L290 TraceCheckUtils]: 5: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,758 INFO L290 TraceCheckUtils]: 6: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,759 INFO L290 TraceCheckUtils]: 7: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,760 INFO L290 TraceCheckUtils]: 9: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,760 INFO L290 TraceCheckUtils]: 10: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,761 INFO L290 TraceCheckUtils]: 12: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,762 INFO L290 TraceCheckUtils]: 14: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,762 INFO L290 TraceCheckUtils]: 15: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,763 INFO L290 TraceCheckUtils]: 16: Hoare triple {2631#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {2629#false} is VALID [2022-02-20 23:49:37,763 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:37,763 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:37,763 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1548296530] [2022-02-20 23:49:37,763 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1548296530] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:37,764 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:37,764 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:49:37,764 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [944112588] [2022-02-20 23:49:37,764 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:37,764 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 17 [2022-02-20 23:49:37,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:37,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 23:49:37,773 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:37,773 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:37,773 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:37,773 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:37,773 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:37,774 INFO L87 Difference]: Start difference. First operand 46 states and 51 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 23:49:37,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,839 INFO L93 Difference]: Finished difference Result 76 states and 84 transitions. [2022-02-20 23:49:37,839 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:49:37,839 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 17 [2022-02-20 23:49:37,839 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:37,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 23:49:37,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2022-02-20 23:49:37,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 23:49:37,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2022-02-20 23:49:37,841 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 44 transitions. [2022-02-20 23:49:37,869 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 23:49:37,870 INFO L225 Difference]: With dead ends: 76 [2022-02-20 23:49:37,870 INFO L226 Difference]: Without dead ends: 76 [2022-02-20 23:49:37,871 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 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 23:49:37,871 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 13 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:37,871 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 46 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:37,872 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-02-20 23:49:37,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 72. [2022-02-20 23:49:37,874 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:37,874 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 23:49:37,874 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 23:49:37,874 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 23:49:37,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,875 INFO L93 Difference]: Finished difference Result 76 states and 84 transitions. [2022-02-20 23:49:37,875 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 84 transitions. [2022-02-20 23:49:37,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,876 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 76 states. [2022-02-20 23:49:37,876 INFO L87 Difference]: Start difference. First operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 76 states. [2022-02-20 23:49:37,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:37,877 INFO L93 Difference]: Finished difference Result 76 states and 84 transitions. [2022-02-20 23:49:37,877 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 84 transitions. [2022-02-20 23:49:37,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:37,877 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:37,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:37,878 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:37,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 67 states have (on average 1.2238805970149254) internal successors, (82), 71 states have internal predecessors, (82), 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 23:49:37,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 82 transitions. [2022-02-20 23:49:37,879 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 82 transitions. Word has length 17 [2022-02-20 23:49:37,879 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:37,879 INFO L470 AbstractCegarLoop]: Abstraction has 72 states and 82 transitions. [2022-02-20 23:49:37,879 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 23:49:37,880 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 82 transitions. [2022-02-20 23:49:37,880 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:49:37,880 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:37,880 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:37,880 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:49:37,880 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:37,881 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:37,881 INFO L85 PathProgramCache]: Analyzing trace with hash -1949815299, now seen corresponding path program 1 times [2022-02-20 23:49:37,881 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:37,881 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1011077678] [2022-02-20 23:49:37,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:37,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:37,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:37,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {2934#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2934#true} is VALID [2022-02-20 23:49:37,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {2934#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,943 INFO L290 TraceCheckUtils]: 3: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,943 INFO L290 TraceCheckUtils]: 4: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,944 INFO L290 TraceCheckUtils]: 6: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,944 INFO L290 TraceCheckUtils]: 7: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,945 INFO L290 TraceCheckUtils]: 8: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,945 INFO L290 TraceCheckUtils]: 9: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,946 INFO L290 TraceCheckUtils]: 10: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,946 INFO L290 TraceCheckUtils]: 11: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,946 INFO L290 TraceCheckUtils]: 12: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,947 INFO L290 TraceCheckUtils]: 14: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} foo_#res#1 := foo_~i~0#1; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,948 INFO L290 TraceCheckUtils]: 15: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:37,948 INFO L290 TraceCheckUtils]: 16: Hoare triple {2936#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {2938#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {2938#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(main_~i~1#1 % 4294967296 < 32); {2938#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {2938#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_~i~1#1 := 0; {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:37,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {2937#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {2935#false} is VALID [2022-02-20 23:49:37,951 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:37,951 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:37,952 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1011077678] [2022-02-20 23:49:37,952 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1011077678] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:37,952 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1439133367] [2022-02-20 23:49:37,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:37,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:37,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:37,968 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 23:49:37,969 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 23:49:38,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:38,019 INFO L263 TraceCheckSpWp]: Trace formula consists of 102 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:49:38,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:38,029 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:38,228 INFO L290 TraceCheckUtils]: 0: Hoare triple {2934#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2934#true} is VALID [2022-02-20 23:49:38,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {2934#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,229 INFO L290 TraceCheckUtils]: 3: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,230 INFO L290 TraceCheckUtils]: 4: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,231 INFO L290 TraceCheckUtils]: 6: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,233 INFO L290 TraceCheckUtils]: 10: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,233 INFO L290 TraceCheckUtils]: 11: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,234 INFO L290 TraceCheckUtils]: 13: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,234 INFO L290 TraceCheckUtils]: 14: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,235 INFO L290 TraceCheckUtils]: 15: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,236 INFO L290 TraceCheckUtils]: 16: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} havoc main_#t~ret3#1; {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,237 INFO L290 TraceCheckUtils]: 18: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,238 INFO L290 TraceCheckUtils]: 19: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(main_~i~1#1 % 4294967296 < 32); {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,238 INFO L290 TraceCheckUtils]: 20: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_~i~1#1 := 0; {3004#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,239 INFO L290 TraceCheckUtils]: 21: Hoare triple {3004#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32); {3004#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,239 INFO L290 TraceCheckUtils]: 22: Hoare triple {3004#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {2935#false} is VALID [2022-02-20 23:49:38,239 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:38,240 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:38,325 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 24 [2022-02-20 23:49:38,524 INFO L290 TraceCheckUtils]: 22: Hoare triple {3011#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {2935#false} is VALID [2022-02-20 23:49:38,525 INFO L290 TraceCheckUtils]: 21: Hoare triple {3011#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {3011#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:38,526 INFO L290 TraceCheckUtils]: 20: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_~i~1#1 := 0; {3011#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:38,526 INFO L290 TraceCheckUtils]: 19: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(main_~i~1#1 % 4294967296 < 32); {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,527 INFO L290 TraceCheckUtils]: 18: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,527 INFO L290 TraceCheckUtils]: 17: Hoare triple {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} havoc main_#t~ret3#1; {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {2991#(and (<= 0 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,528 INFO L290 TraceCheckUtils]: 15: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,531 INFO L290 TraceCheckUtils]: 10: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,534 INFO L290 TraceCheckUtils]: 9: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,535 INFO L290 TraceCheckUtils]: 7: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,536 INFO L290 TraceCheckUtils]: 6: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,536 INFO L290 TraceCheckUtils]: 5: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,537 INFO L290 TraceCheckUtils]: 4: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,537 INFO L290 TraceCheckUtils]: 3: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,537 INFO L290 TraceCheckUtils]: 2: Hoare triple {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,538 INFO L290 TraceCheckUtils]: 1: Hoare triple {2934#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {2945#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:38,538 INFO L290 TraceCheckUtils]: 0: Hoare triple {2934#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2934#true} is VALID [2022-02-20 23:49:38,538 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:38,539 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1439133367] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:38,539 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:38,539 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 8 [2022-02-20 23:49:38,539 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [871123033] [2022-02-20 23:49:38,539 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:38,540 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23 [2022-02-20 23:49:38,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:38,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23:49:38,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:38,565 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:49:38,566 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:38,566 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:49:38,566 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:38,566 INFO L87 Difference]: Start difference. First operand 72 states and 82 transitions. Second operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23:49:38,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:38,776 INFO L93 Difference]: Finished difference Result 80 states and 89 transitions. [2022-02-20 23:49:38,776 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:49:38,776 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23 [2022-02-20 23:49:38,776 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:38,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23:49:38,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-02-20 23:49:38,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23:49:38,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-02-20 23:49:38,777 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-02-20 23:49:38,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:38,816 INFO L225 Difference]: With dead ends: 80 [2022-02-20 23:49:38,816 INFO L226 Difference]: Without dead ends: 80 [2022-02-20 23:49:38,817 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 40 SyntacticMatches, 2 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:49:38,817 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 79 mSDsluCounter, 45 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 92 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:38,817 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 58 Invalid, 92 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:38,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-02-20 23:49:38,819 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 73. [2022-02-20 23:49:38,819 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:38,819 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 23:49:38,819 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 23:49:38,820 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 23:49:38,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:38,820 INFO L93 Difference]: Finished difference Result 80 states and 89 transitions. [2022-02-20 23:49:38,820 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 89 transitions. [2022-02-20 23:49:38,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:38,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:38,821 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 80 states. [2022-02-20 23:49:38,821 INFO L87 Difference]: Start difference. First operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 80 states. [2022-02-20 23:49:38,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:38,822 INFO L93 Difference]: Finished difference Result 80 states and 89 transitions. [2022-02-20 23:49:38,822 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 89 transitions. [2022-02-20 23:49:38,822 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:38,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:38,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:38,822 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:38,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 states have internal predecessors, (83), 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 23:49:38,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 83 transitions. [2022-02-20 23:49:38,823 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 83 transitions. Word has length 23 [2022-02-20 23:49:38,823 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:38,823 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 83 transitions. [2022-02-20 23:49:38,824 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 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 23:49:38,824 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 83 transitions. [2022-02-20 23:49:38,824 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:49:38,824 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:38,824 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 1, 1, 1, 1] [2022-02-20 23:49:38,841 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-02-20 23:49:39,035 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:39,035 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:39,036 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:39,036 INFO L85 PathProgramCache]: Analyzing trace with hash 634835432, now seen corresponding path program 2 times [2022-02-20 23:49:39,036 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:39,036 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [485202688] [2022-02-20 23:49:39,036 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:39,036 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:39,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:39,093 INFO L290 TraceCheckUtils]: 0: Hoare triple {3394#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3394#true} is VALID [2022-02-20 23:49:39,093 INFO L290 TraceCheckUtils]: 1: Hoare triple {3394#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {3396#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {3396#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,094 INFO L290 TraceCheckUtils]: 3: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,094 INFO L290 TraceCheckUtils]: 4: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,095 INFO L290 TraceCheckUtils]: 6: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,095 INFO L290 TraceCheckUtils]: 7: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,095 INFO L290 TraceCheckUtils]: 8: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,096 INFO L290 TraceCheckUtils]: 9: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,096 INFO L290 TraceCheckUtils]: 10: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,096 INFO L290 TraceCheckUtils]: 11: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,097 INFO L290 TraceCheckUtils]: 13: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3397#(= |ULTIMATE.start_foo_~size#1| 0)} is VALID [2022-02-20 23:49:39,098 INFO L290 TraceCheckUtils]: 14: Hoare triple {3397#(= |ULTIMATE.start_foo_~size#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,098 INFO L290 TraceCheckUtils]: 15: Hoare triple {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,100 INFO L290 TraceCheckUtils]: 16: Hoare triple {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {3398#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,101 INFO L290 TraceCheckUtils]: 18: Hoare triple {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,102 INFO L290 TraceCheckUtils]: 19: Hoare triple {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,103 INFO L290 TraceCheckUtils]: 21: Hoare triple {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,105 INFO L290 TraceCheckUtils]: 22: Hoare triple {3399#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3400#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:39,106 INFO L290 TraceCheckUtils]: 23: Hoare triple {3400#(and (= |ULTIMATE.start_foo_~size#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3395#false} is VALID [2022-02-20 23:49:39,106 INFO L290 TraceCheckUtils]: 24: Hoare triple {3395#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {3395#false} is VALID [2022-02-20 23:49:39,106 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 29 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-20 23:49:39,106 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:39,106 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [485202688] [2022-02-20 23:49:39,107 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [485202688] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:39,107 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:39,107 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:49:39,107 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1539178266] [2022-02-20 23:49:39,107 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:39,107 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 25 [2022-02-20 23:49:39,108 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:39,108 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 23:49:39,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:39,119 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:49:39,119 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:39,119 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:49:39,119 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:49:39,119 INFO L87 Difference]: Start difference. First operand 73 states and 83 transitions. Second operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 23:49:39,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:39,250 INFO L93 Difference]: Finished difference Result 86 states and 93 transitions. [2022-02-20 23:49:39,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:39,250 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 25 [2022-02-20 23:49:39,251 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:39,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 23:49:39,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 74 transitions. [2022-02-20 23:49:39,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 23:49:39,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 74 transitions. [2022-02-20 23:49:39,252 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 74 transitions. [2022-02-20 23:49:39,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:39,286 INFO L225 Difference]: With dead ends: 86 [2022-02-20 23:49:39,286 INFO L226 Difference]: Without dead ends: 86 [2022-02-20 23:49:39,287 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=38, Invalid=52, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:49:39,287 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 46 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:39,287 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 65 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:39,287 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-02-20 23:49:39,289 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 61. [2022-02-20 23:49:39,289 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:39,289 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 23:49:39,289 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 23:49:39,289 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 23:49:39,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:39,290 INFO L93 Difference]: Finished difference Result 86 states and 93 transitions. [2022-02-20 23:49:39,290 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 93 transitions. [2022-02-20 23:49:39,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:39,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:39,290 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 86 states. [2022-02-20 23:49:39,290 INFO L87 Difference]: Start difference. First operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 86 states. [2022-02-20 23:49:39,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:39,291 INFO L93 Difference]: Finished difference Result 86 states and 93 transitions. [2022-02-20 23:49:39,291 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 93 transitions. [2022-02-20 23:49:39,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:39,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:39,292 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:39,292 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:39,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 60 states have internal predecessors, (66), 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 23:49:39,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 66 transitions. [2022-02-20 23:49:39,292 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 66 transitions. Word has length 25 [2022-02-20 23:49:39,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:39,292 INFO L470 AbstractCegarLoop]: Abstraction has 61 states and 66 transitions. [2022-02-20 23:49:39,292 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 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 23:49:39,292 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 66 transitions. [2022-02-20 23:49:39,293 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:49:39,293 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:39,293 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:39,293 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 23:49:39,293 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:39,293 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:39,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1809865305, now seen corresponding path program 1 times [2022-02-20 23:49:39,293 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:39,294 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1989990917] [2022-02-20 23:49:39,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:39,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:39,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:39,359 INFO L290 TraceCheckUtils]: 0: Hoare triple {3728#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3728#true} is VALID [2022-02-20 23:49:39,359 INFO L290 TraceCheckUtils]: 1: Hoare triple {3728#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,360 INFO L290 TraceCheckUtils]: 3: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,360 INFO L290 TraceCheckUtils]: 4: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,361 INFO L290 TraceCheckUtils]: 5: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,361 INFO L290 TraceCheckUtils]: 6: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,362 INFO L290 TraceCheckUtils]: 9: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,362 INFO L290 TraceCheckUtils]: 10: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,362 INFO L290 TraceCheckUtils]: 11: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,363 INFO L290 TraceCheckUtils]: 12: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,363 INFO L290 TraceCheckUtils]: 14: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,363 INFO L290 TraceCheckUtils]: 15: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,364 INFO L290 TraceCheckUtils]: 16: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,364 INFO L290 TraceCheckUtils]: 17: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:39,364 INFO L290 TraceCheckUtils]: 18: Hoare triple {3730#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {3731#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 19: Hoare triple {3731#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} assume !(main_~i~1#1 % 4294967296 < 32); {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 20: Hoare triple {3729#false} main_~i~1#1 := 0; {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 21: Hoare triple {3729#false} assume !!(main_~i~1#1 % 4294967296 < 32); {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 22: Hoare triple {3729#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 23: Hoare triple {3729#false} assume main_#t~mem5#1 != 1 + main_~i~1#1;havoc main_#t~mem5#1; {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 24: Hoare triple {3729#false} main_#res#1 := 1;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L290 TraceCheckUtils]: 25: Hoare triple {3729#false} assume !(#valid == main_old_#valid#1); {3729#false} is VALID [2022-02-20 23:49:39,365 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:39,365 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:39,366 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1989990917] [2022-02-20 23:49:39,366 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1989990917] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:39,366 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [580807969] [2022-02-20 23:49:39,366 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:39,366 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:39,366 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:39,380 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 23:49:39,443 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 23:49:39,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:39,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:49:39,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:39,503 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:40,104 INFO L290 TraceCheckUtils]: 0: Hoare triple {3728#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3728#true} is VALID [2022-02-20 23:49:40,105 INFO L290 TraceCheckUtils]: 1: Hoare triple {3728#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,106 INFO L290 TraceCheckUtils]: 2: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,108 INFO L290 TraceCheckUtils]: 3: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,108 INFO L290 TraceCheckUtils]: 4: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,111 INFO L290 TraceCheckUtils]: 5: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,112 INFO L290 TraceCheckUtils]: 6: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,114 INFO L290 TraceCheckUtils]: 7: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,115 INFO L290 TraceCheckUtils]: 8: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,116 INFO L290 TraceCheckUtils]: 10: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,116 INFO L290 TraceCheckUtils]: 11: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,117 INFO L290 TraceCheckUtils]: 12: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,117 INFO L290 TraceCheckUtils]: 13: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,118 INFO L290 TraceCheckUtils]: 14: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} foo_#res#1 := foo_~i~0#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,119 INFO L290 TraceCheckUtils]: 15: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,119 INFO L290 TraceCheckUtils]: 16: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,120 INFO L290 TraceCheckUtils]: 17: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} havoc main_#t~ret3#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,121 INFO L290 TraceCheckUtils]: 18: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,121 INFO L290 TraceCheckUtils]: 19: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !(main_~i~1#1 % 4294967296 < 32); {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,122 INFO L290 TraceCheckUtils]: 20: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} main_~i~1#1 := 0; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,122 INFO L290 TraceCheckUtils]: 21: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume !!(main_~i~1#1 % 4294967296 < 32); {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,123 INFO L290 TraceCheckUtils]: 22: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,123 INFO L290 TraceCheckUtils]: 23: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} assume main_#t~mem5#1 != 1 + main_~i~1#1;havoc main_#t~mem5#1; {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} is VALID [2022-02-20 23:49:40,124 INFO L290 TraceCheckUtils]: 24: Hoare triple {3738#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_129 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_129) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_128 Int) (v_ArrVal_127 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_127))))} main_#res#1 := 1;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {3808#(exists ((|v_ULTIMATE.start_main_~#b~0#1.base_16| Int) (|v_ULTIMATE.start_main_~#mask~0#1.base_11| Int) (v_ArrVal_129 Int) (v_ArrVal_128 Int) (v_ArrVal_127 Int)) (and (= (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16|) 0) (= (select (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16| v_ArrVal_129) |v_ULTIMATE.start_main_~#mask~0#1.base_11|) 0) (= (store (store (store (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16| v_ArrVal_128) |v_ULTIMATE.start_main_~#mask~0#1.base_11| v_ArrVal_127) |v_ULTIMATE.start_main_~#b~0#1.base_16| 0) |v_ULTIMATE.start_main_~#mask~0#1.base_11| 0) |#valid|)))} is VALID [2022-02-20 23:49:40,125 INFO L290 TraceCheckUtils]: 25: Hoare triple {3808#(exists ((|v_ULTIMATE.start_main_~#b~0#1.base_16| Int) (|v_ULTIMATE.start_main_~#mask~0#1.base_11| Int) (v_ArrVal_129 Int) (v_ArrVal_128 Int) (v_ArrVal_127 Int)) (and (= (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16|) 0) (= (select (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16| v_ArrVal_129) |v_ULTIMATE.start_main_~#mask~0#1.base_11|) 0) (= (store (store (store (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_16| v_ArrVal_128) |v_ULTIMATE.start_main_~#mask~0#1.base_11| v_ArrVal_127) |v_ULTIMATE.start_main_~#b~0#1.base_16| 0) |v_ULTIMATE.start_main_~#mask~0#1.base_11| 0) |#valid|)))} assume !(#valid == main_old_#valid#1); {3729#false} is VALID [2022-02-20 23:49:40,125 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:49:40,125 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:40,126 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [580807969] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:40,126 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:49:40,126 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 6 [2022-02-20 23:49:40,126 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [312313972] [2022-02-20 23:49:40,126 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:40,127 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 26 [2022-02-20 23:49:40,127 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:40,127 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 23:49:40,149 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:40,149 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:40,149 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:40,150 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:40,150 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:40,150 INFO L87 Difference]: Start difference. First operand 61 states and 66 transitions. Second operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 23:49:40,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,183 INFO L93 Difference]: Finished difference Result 62 states and 66 transitions. [2022-02-20 23:49:40,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:49:40,183 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 26 [2022-02-20 23:49:40,183 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:40,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 23:49:40,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 30 transitions. [2022-02-20 23:49:40,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 23:49:40,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 30 transitions. [2022-02-20 23:49:40,184 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 30 transitions. [2022-02-20 23:49:40,216 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:40,217 INFO L225 Difference]: With dead ends: 62 [2022-02-20 23:49:40,217 INFO L226 Difference]: Without dead ends: 60 [2022-02-20 23:49:40,217 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:40,218 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 5 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 13 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:40,218 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 39 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 13 Unchecked, 0.0s Time] [2022-02-20 23:49:40,218 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-02-20 23:49:40,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2022-02-20 23:49:40,219 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:40,220 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 23:49:40,220 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 23:49:40,220 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 23:49:40,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,221 INFO L93 Difference]: Finished difference Result 60 states and 64 transitions. [2022-02-20 23:49:40,221 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 64 transitions. [2022-02-20 23:49:40,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:40,221 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:40,221 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 60 states. [2022-02-20 23:49:40,221 INFO L87 Difference]: Start difference. First operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 60 states. [2022-02-20 23:49:40,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,222 INFO L93 Difference]: Finished difference Result 60 states and 64 transitions. [2022-02-20 23:49:40,222 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 64 transitions. [2022-02-20 23:49:40,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:40,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:40,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:40,223 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:40,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 55 states have (on average 1.1636363636363636) internal successors, (64), 59 states have internal predecessors, (64), 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 23:49:40,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 64 transitions. [2022-02-20 23:49:40,223 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 64 transitions. Word has length 26 [2022-02-20 23:49:40,223 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:40,224 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 64 transitions. [2022-02-20 23:49:40,224 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.0) internal successors, (21), 4 states have internal predecessors, (21), 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 23:49:40,224 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 64 transitions. [2022-02-20 23:49:40,224 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:49:40,224 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:40,224 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:40,241 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 23:49:40,441 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-02-20 23:49:40,442 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:40,442 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:40,442 INFO L85 PathProgramCache]: Analyzing trace with hash -271127104, now seen corresponding path program 1 times [2022-02-20 23:49:40,442 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:40,442 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1359160781] [2022-02-20 23:49:40,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:40,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:40,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:40,487 INFO L290 TraceCheckUtils]: 0: Hoare triple {4053#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4053#true} is VALID [2022-02-20 23:49:40,487 INFO L290 TraceCheckUtils]: 1: Hoare triple {4053#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,488 INFO L290 TraceCheckUtils]: 3: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,489 INFO L290 TraceCheckUtils]: 4: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,489 INFO L290 TraceCheckUtils]: 6: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,490 INFO L290 TraceCheckUtils]: 9: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,491 INFO L290 TraceCheckUtils]: 10: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,491 INFO L290 TraceCheckUtils]: 11: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,492 INFO L290 TraceCheckUtils]: 13: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,492 INFO L290 TraceCheckUtils]: 14: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,492 INFO L290 TraceCheckUtils]: 15: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,492 INFO L290 TraceCheckUtils]: 16: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,493 INFO L290 TraceCheckUtils]: 17: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:40,494 INFO L290 TraceCheckUtils]: 18: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4056#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} is VALID [2022-02-20 23:49:40,494 INFO L290 TraceCheckUtils]: 19: Hoare triple {4056#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} assume !(main_~i~1#1 % 4294967296 < 32); {4054#false} is VALID [2022-02-20 23:49:40,494 INFO L290 TraceCheckUtils]: 20: Hoare triple {4054#false} main_~i~1#1 := 0; {4054#false} is VALID [2022-02-20 23:49:40,494 INFO L290 TraceCheckUtils]: 21: Hoare triple {4054#false} assume !!(main_~i~1#1 % 4294967296 < 32); {4054#false} is VALID [2022-02-20 23:49:40,494 INFO L290 TraceCheckUtils]: 22: Hoare triple {4054#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {4054#false} is VALID [2022-02-20 23:49:40,495 INFO L290 TraceCheckUtils]: 23: Hoare triple {4054#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {4054#false} is VALID [2022-02-20 23:49:40,495 INFO L290 TraceCheckUtils]: 24: Hoare triple {4054#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {4054#false} is VALID [2022-02-20 23:49:40,495 INFO L290 TraceCheckUtils]: 25: Hoare triple {4054#false} assume !!(main_~i~1#1 % 4294967296 < 32); {4054#false} is VALID [2022-02-20 23:49:40,495 INFO L290 TraceCheckUtils]: 26: Hoare triple {4054#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4054#false} is VALID [2022-02-20 23:49:40,495 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-20 23:49:40,495 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:40,496 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1359160781] [2022-02-20 23:49:40,496 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1359160781] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:40,496 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1196910005] [2022-02-20 23:49:40,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:40,496 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:40,496 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:40,497 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 23:49:40,498 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 23:49:40,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:40,540 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 16 conjunts are in the unsatisfiable core [2022-02-20 23:49:40,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:40,548 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:40,767 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:40,841 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:49:40,842 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:49:40,842 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 17 treesize of output 10 [2022-02-20 23:49:40,870 INFO L290 TraceCheckUtils]: 0: Hoare triple {4053#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4053#true} is VALID [2022-02-20 23:49:40,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {4053#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4063#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:40,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {4063#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,872 INFO L290 TraceCheckUtils]: 3: Hoare triple {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,872 INFO L290 TraceCheckUtils]: 4: Hoare triple {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,873 INFO L290 TraceCheckUtils]: 6: Hoare triple {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {4067#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,874 INFO L290 TraceCheckUtils]: 8: Hoare triple {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,874 INFO L290 TraceCheckUtils]: 9: Hoare triple {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,875 INFO L290 TraceCheckUtils]: 10: Hoare triple {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,875 INFO L290 TraceCheckUtils]: 11: Hoare triple {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,875 INFO L290 TraceCheckUtils]: 12: Hoare triple {4083#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4099#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {4099#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4099#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:40,876 INFO L290 TraceCheckUtils]: 14: Hoare triple {4099#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#res#1 := foo_~i~0#1; {4106#(and (<= 2 |ULTIMATE.start_foo_#res#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:40,877 INFO L290 TraceCheckUtils]: 15: Hoare triple {4106#(and (<= 2 |ULTIMATE.start_foo_#res#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4110#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_main_#t~ret3#1|))} is VALID [2022-02-20 23:49:40,877 INFO L290 TraceCheckUtils]: 16: Hoare triple {4110#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 |ULTIMATE.start_main_#t~ret3#1|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,877 INFO L290 TraceCheckUtils]: 17: Hoare triple {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} havoc main_#t~ret3#1; {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,878 INFO L290 TraceCheckUtils]: 18: Hoare triple {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,878 INFO L290 TraceCheckUtils]: 19: Hoare triple {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} assume !(main_~i~1#1 % 4294967296 < 32); {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,879 INFO L290 TraceCheckUtils]: 20: Hoare triple {4114#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} main_~i~1#1 := 0; {4127#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,879 INFO L290 TraceCheckUtils]: 21: Hoare triple {4127#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {4127#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} is VALID [2022-02-20 23:49:40,880 INFO L290 TraceCheckUtils]: 22: Hoare triple {4127#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 2 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|)))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {4134#(and (<= 2 |ULTIMATE.start_main_#t~mem5#1|) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:49:40,880 INFO L290 TraceCheckUtils]: 23: Hoare triple {4134#(and (<= 2 |ULTIMATE.start_main_#t~mem5#1|) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {4054#false} is VALID [2022-02-20 23:49:40,880 INFO L290 TraceCheckUtils]: 24: Hoare triple {4054#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {4054#false} is VALID [2022-02-20 23:49:40,880 INFO L290 TraceCheckUtils]: 25: Hoare triple {4054#false} assume !!(main_~i~1#1 % 4294967296 < 32); {4054#false} is VALID [2022-02-20 23:49:40,880 INFO L290 TraceCheckUtils]: 26: Hoare triple {4054#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4054#false} is VALID [2022-02-20 23:49:40,880 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:40,880 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:41,026 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2022-02-20 23:49:41,043 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 24 [2022-02-20 23:49:41,396 INFO L290 TraceCheckUtils]: 26: Hoare triple {4054#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4054#false} is VALID [2022-02-20 23:49:41,397 INFO L290 TraceCheckUtils]: 25: Hoare triple {4054#false} assume !!(main_~i~1#1 % 4294967296 < 32); {4054#false} is VALID [2022-02-20 23:49:41,397 INFO L290 TraceCheckUtils]: 24: Hoare triple {4054#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {4054#false} is VALID [2022-02-20 23:49:41,397 INFO L290 TraceCheckUtils]: 23: Hoare triple {4156#(not (<= |ULTIMATE.start_main_#t~mem5#1| (+ |ULTIMATE.start_main_~i~1#1| 1)))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {4054#false} is VALID [2022-02-20 23:49:41,398 INFO L290 TraceCheckUtils]: 22: Hoare triple {4160#(< (+ |ULTIMATE.start_main_~i~1#1| 1) (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {4156#(not (<= |ULTIMATE.start_main_#t~mem5#1| (+ |ULTIMATE.start_main_~i~1#1| 1)))} is VALID [2022-02-20 23:49:41,398 INFO L290 TraceCheckUtils]: 21: Hoare triple {4160#(< (+ |ULTIMATE.start_main_~i~1#1| 1) (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} assume !!(main_~i~1#1 % 4294967296 < 32); {4160#(< (+ |ULTIMATE.start_main_~i~1#1| 1) (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,398 INFO L290 TraceCheckUtils]: 20: Hoare triple {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} main_~i~1#1 := 0; {4160#(< (+ |ULTIMATE.start_main_~i~1#1| 1) (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,399 INFO L290 TraceCheckUtils]: 19: Hoare triple {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(main_~i~1#1 % 4294967296 < 32); {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:41,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:41,399 INFO L290 TraceCheckUtils]: 17: Hoare triple {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} havoc main_#t~ret3#1; {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:41,400 INFO L290 TraceCheckUtils]: 16: Hoare triple {4180#(and (< 1 |ULTIMATE.start_main_#t~ret3#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4167#(< 1 (select (select |#memory_int| |ULTIMATE.start_main_~#b~0#1.base|) |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:41,401 INFO L290 TraceCheckUtils]: 15: Hoare triple {4184#(and (< 1 |ULTIMATE.start_foo_#res#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4180#(and (< 1 |ULTIMATE.start_main_#t~ret3#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,401 INFO L290 TraceCheckUtils]: 14: Hoare triple {4188#(and (< 1 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} foo_#res#1 := foo_~i~0#1; {4184#(and (< 1 |ULTIMATE.start_foo_#res#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,401 INFO L290 TraceCheckUtils]: 13: Hoare triple {4188#(and (< 1 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4188#(and (< 1 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,402 INFO L290 TraceCheckUtils]: 12: Hoare triple {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4188#(and (< 1 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,402 INFO L290 TraceCheckUtils]: 11: Hoare triple {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,403 INFO L290 TraceCheckUtils]: 10: Hoare triple {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4195#(and (< 0 |ULTIMATE.start_foo_~i~0#1|) (= |ULTIMATE.start_main_~#b~0#1.offset| (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:41,406 INFO L290 TraceCheckUtils]: 6: Hoare triple {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} is VALID [2022-02-20 23:49:41,407 INFO L290 TraceCheckUtils]: 5: Hoare triple {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} is VALID [2022-02-20 23:49:41,407 INFO L290 TraceCheckUtils]: 4: Hoare triple {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} is VALID [2022-02-20 23:49:41,407 INFO L290 TraceCheckUtils]: 3: Hoare triple {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} is VALID [2022-02-20 23:49:41,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4211#(and (< 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)) (= (* |ULTIMATE.start_main_~i~1#1| 4) 0))} is VALID [2022-02-20 23:49:41,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {4053#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4055#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:41,408 INFO L290 TraceCheckUtils]: 0: Hoare triple {4053#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4053#true} is VALID [2022-02-20 23:49:41,408 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:41,409 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1196910005] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:41,409 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:41,409 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 11, 11] total 21 [2022-02-20 23:49:41,409 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1052939285] [2022-02-20 23:49:41,409 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:41,409 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 27 [2022-02-20 23:49:41,409 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:41,409 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 23:49:41,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:41,456 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-20 23:49:41,456 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:41,456 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-20 23:49:41,456 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=329, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:49:41,457 INFO L87 Difference]: Start difference. First operand 60 states and 64 transitions. Second operand has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 23:49:41,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:41,992 INFO L93 Difference]: Finished difference Result 101 states and 108 transitions. [2022-02-20 23:49:41,993 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:49:41,993 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 27 [2022-02-20 23:49:41,993 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:41,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 23:49:41,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 70 transitions. [2022-02-20 23:49:41,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 23:49:41,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 70 transitions. [2022-02-20 23:49:41,994 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 70 transitions. [2022-02-20 23:49:42,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:42,043 INFO L225 Difference]: With dead ends: 101 [2022-02-20 23:49:42,043 INFO L226 Difference]: Without dead ends: 101 [2022-02-20 23:49:42,043 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 171 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=168, Invalid=482, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:49:42,043 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 59 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 316 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 327 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 316 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:42,044 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 128 Invalid, 327 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 316 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:42,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-02-20 23:49:42,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 66. [2022-02-20 23:49:42,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:42,045 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 23:49:42,045 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 23:49:42,045 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 23:49:42,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:42,046 INFO L93 Difference]: Finished difference Result 101 states and 108 transitions. [2022-02-20 23:49:42,046 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 108 transitions. [2022-02-20 23:49:42,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:42,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:42,047 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 101 states. [2022-02-20 23:49:42,047 INFO L87 Difference]: Start difference. First operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 101 states. [2022-02-20 23:49:42,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:42,048 INFO L93 Difference]: Finished difference Result 101 states and 108 transitions. [2022-02-20 23:49:42,048 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 108 transitions. [2022-02-20 23:49:42,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:42,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:42,048 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:42,048 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:42,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 61 states have (on average 1.1475409836065573) internal successors, (70), 65 states have internal predecessors, (70), 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 23:49:42,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 70 transitions. [2022-02-20 23:49:42,051 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 70 transitions. Word has length 27 [2022-02-20 23:49:42,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:42,051 INFO L470 AbstractCegarLoop]: Abstraction has 66 states and 70 transitions. [2022-02-20 23:49:42,051 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 3.142857142857143) internal successors, (66), 21 states have internal predecessors, (66), 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 23:49:42,051 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 70 transitions. [2022-02-20 23:49:42,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-02-20 23:49:42,052 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:42,052 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:42,085 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-02-20 23:49:42,264 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:42,265 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:42,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:42,265 INFO L85 PathProgramCache]: Analyzing trace with hash 164722723, now seen corresponding path program 1 times [2022-02-20 23:49:42,265 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:42,265 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1418143541] [2022-02-20 23:49:42,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:42,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:42,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:42,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {4611#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4611#true} is VALID [2022-02-20 23:49:42,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {4611#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,334 INFO L290 TraceCheckUtils]: 3: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,335 INFO L290 TraceCheckUtils]: 4: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,335 INFO L290 TraceCheckUtils]: 6: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,336 INFO L290 TraceCheckUtils]: 10: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,337 INFO L290 TraceCheckUtils]: 11: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,337 INFO L290 TraceCheckUtils]: 12: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,337 INFO L290 TraceCheckUtils]: 13: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,339 INFO L290 TraceCheckUtils]: 17: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:42,339 INFO L290 TraceCheckUtils]: 18: Hoare triple {4613#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,339 INFO L290 TraceCheckUtils]: 19: Hoare triple {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:42,340 INFO L290 TraceCheckUtils]: 20: Hoare triple {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:42,340 INFO L290 TraceCheckUtils]: 21: Hoare triple {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:42,341 INFO L290 TraceCheckUtils]: 22: Hoare triple {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:42,341 INFO L290 TraceCheckUtils]: 23: Hoare triple {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:42,341 INFO L290 TraceCheckUtils]: 24: Hoare triple {4615#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,342 INFO L290 TraceCheckUtils]: 25: Hoare triple {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,342 INFO L290 TraceCheckUtils]: 26: Hoare triple {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,343 INFO L290 TraceCheckUtils]: 27: Hoare triple {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,343 INFO L290 TraceCheckUtils]: 28: Hoare triple {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,344 INFO L290 TraceCheckUtils]: 29: Hoare triple {4616#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4617#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:42,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {4617#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4612#false} is VALID [2022-02-20 23:49:42,344 INFO L290 TraceCheckUtils]: 31: Hoare triple {4612#false} foo_#res#1 := foo_~i~0#1; {4612#false} is VALID [2022-02-20 23:49:42,344 INFO L290 TraceCheckUtils]: 32: Hoare triple {4612#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4612#false} is VALID [2022-02-20 23:49:42,344 INFO L290 TraceCheckUtils]: 33: Hoare triple {4612#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4612#false} is VALID [2022-02-20 23:49:42,344 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 3 proven. 33 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:42,345 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:42,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1418143541] [2022-02-20 23:49:42,345 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1418143541] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:42,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [423745123] [2022-02-20 23:49:42,345 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:42,345 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:42,345 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:42,346 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 23:49:42,347 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 23:49:42,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:42,396 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:49:42,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:42,404 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:42,662 INFO L290 TraceCheckUtils]: 0: Hoare triple {4611#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4611#true} is VALID [2022-02-20 23:49:42,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {4611#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,663 INFO L290 TraceCheckUtils]: 3: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,664 INFO L290 TraceCheckUtils]: 4: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,664 INFO L290 TraceCheckUtils]: 5: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,664 INFO L290 TraceCheckUtils]: 6: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,665 INFO L290 TraceCheckUtils]: 7: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,665 INFO L290 TraceCheckUtils]: 8: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,665 INFO L290 TraceCheckUtils]: 9: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,666 INFO L290 TraceCheckUtils]: 10: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,666 INFO L290 TraceCheckUtils]: 11: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,666 INFO L290 TraceCheckUtils]: 12: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,667 INFO L290 TraceCheckUtils]: 13: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,667 INFO L290 TraceCheckUtils]: 14: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,667 INFO L290 TraceCheckUtils]: 15: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,668 INFO L290 TraceCheckUtils]: 16: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,668 INFO L290 TraceCheckUtils]: 17: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,668 INFO L290 TraceCheckUtils]: 18: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,669 INFO L290 TraceCheckUtils]: 19: Hoare triple {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,670 INFO L290 TraceCheckUtils]: 21: Hoare triple {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,670 INFO L290 TraceCheckUtils]: 22: Hoare triple {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,670 INFO L290 TraceCheckUtils]: 23: Hoare triple {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,671 INFO L290 TraceCheckUtils]: 24: Hoare triple {4679#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 1 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,671 INFO L290 TraceCheckUtils]: 25: Hoare triple {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,672 INFO L290 TraceCheckUtils]: 26: Hoare triple {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,672 INFO L290 TraceCheckUtils]: 27: Hoare triple {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,672 INFO L290 TraceCheckUtils]: 28: Hoare triple {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,673 INFO L290 TraceCheckUtils]: 29: Hoare triple {4695#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4711#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 1 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:42,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {4711#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 1 |ULTIMATE.start_foo_~size#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4612#false} is VALID [2022-02-20 23:49:42,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {4612#false} foo_#res#1 := foo_~i~0#1; {4612#false} is VALID [2022-02-20 23:49:42,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {4612#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4612#false} is VALID [2022-02-20 23:49:42,674 INFO L290 TraceCheckUtils]: 33: Hoare triple {4612#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4612#false} is VALID [2022-02-20 23:49:42,674 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 4 proven. 32 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:42,674 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:42,873 INFO L290 TraceCheckUtils]: 33: Hoare triple {4612#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {4612#false} is VALID [2022-02-20 23:49:42,873 INFO L290 TraceCheckUtils]: 32: Hoare triple {4612#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4612#false} is VALID [2022-02-20 23:49:42,873 INFO L290 TraceCheckUtils]: 31: Hoare triple {4612#false} foo_#res#1 := foo_~i~0#1; {4612#false} is VALID [2022-02-20 23:49:42,874 INFO L290 TraceCheckUtils]: 30: Hoare triple {4733#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4612#false} is VALID [2022-02-20 23:49:42,874 INFO L290 TraceCheckUtils]: 29: Hoare triple {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4733#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:49:42,874 INFO L290 TraceCheckUtils]: 28: Hoare triple {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,875 INFO L290 TraceCheckUtils]: 27: Hoare triple {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,875 INFO L290 TraceCheckUtils]: 26: Hoare triple {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,875 INFO L290 TraceCheckUtils]: 25: Hoare triple {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4737#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,877 INFO L290 TraceCheckUtils]: 22: Hoare triple {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,877 INFO L290 TraceCheckUtils]: 21: Hoare triple {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,877 INFO L290 TraceCheckUtils]: 20: Hoare triple {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,878 INFO L290 TraceCheckUtils]: 19: Hoare triple {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4753#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:42,878 INFO L290 TraceCheckUtils]: 18: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {4614#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,879 INFO L290 TraceCheckUtils]: 17: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,879 INFO L290 TraceCheckUtils]: 16: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,879 INFO L290 TraceCheckUtils]: 15: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,881 INFO L290 TraceCheckUtils]: 10: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,881 INFO L290 TraceCheckUtils]: 9: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,882 INFO L290 TraceCheckUtils]: 7: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,882 INFO L290 TraceCheckUtils]: 6: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,883 INFO L290 TraceCheckUtils]: 4: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,883 INFO L290 TraceCheckUtils]: 3: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {4611#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {4624#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:42,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {4611#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4611#true} is VALID [2022-02-20 23:49:42,884 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 4 proven. 32 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:49:42,884 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [423745123] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:42,884 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:42,884 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 14 [2022-02-20 23:49:42,885 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [233002361] [2022-02-20 23:49:42,885 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:42,885 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 34 [2022-02-20 23:49:42,885 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:42,885 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 23:49:42,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:42,931 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:49:42,931 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:42,932 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:49:42,932 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=129, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:49:42,932 INFO L87 Difference]: Start difference. First operand 66 states and 70 transitions. Second operand has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 23:49:43,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:43,294 INFO L93 Difference]: Finished difference Result 66 states and 69 transitions. [2022-02-20 23:49:43,295 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:49:43,295 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 34 [2022-02-20 23:49:43,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:43,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 23:49:43,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 64 transitions. [2022-02-20 23:49:43,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 23:49:43,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 64 transitions. [2022-02-20 23:49:43,296 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 64 transitions. [2022-02-20 23:49:43,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:43,340 INFO L225 Difference]: With dead ends: 66 [2022-02-20 23:49:43,340 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 23:49:43,341 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=246, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:49:43,341 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 76 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 217 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 57 SdHoareTripleChecker+Invalid, 231 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 217 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:43,341 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 57 Invalid, 231 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 217 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:43,341 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 23:49:43,342 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 66. [2022-02-20 23:49:43,342 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:43,342 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 23:49:43,343 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 23:49:43,343 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 23:49:43,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:43,343 INFO L93 Difference]: Finished difference Result 66 states and 69 transitions. [2022-02-20 23:49:43,343 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 69 transitions. [2022-02-20 23:49:43,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:43,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:43,344 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 66 states. [2022-02-20 23:49:43,344 INFO L87 Difference]: Start difference. First operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 66 states. [2022-02-20 23:49:43,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:43,345 INFO L93 Difference]: Finished difference Result 66 states and 69 transitions. [2022-02-20 23:49:43,345 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 69 transitions. [2022-02-20 23:49:43,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:43,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:43,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:43,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:43,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 65 states have internal predecessors, (69), 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 23:49:43,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 69 transitions. [2022-02-20 23:49:43,347 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 69 transitions. Word has length 34 [2022-02-20 23:49:43,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:43,347 INFO L470 AbstractCegarLoop]: Abstraction has 66 states and 69 transitions. [2022-02-20 23:49:43,347 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.714285714285714) internal successors, (66), 14 states have internal predecessors, (66), 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 23:49:43,347 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 69 transitions. [2022-02-20 23:49:43,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:49:43,348 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:43,348 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:43,383 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 23:49:43,566 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:43,567 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:43,567 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:43,567 INFO L85 PathProgramCache]: Analyzing trace with hash 882673172, now seen corresponding path program 2 times [2022-02-20 23:49:43,567 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:43,567 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1089698122] [2022-02-20 23:49:43,567 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:43,567 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:43,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:43,650 INFO L290 TraceCheckUtils]: 0: Hoare triple {5099#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5099#true} is VALID [2022-02-20 23:49:43,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {5099#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,652 INFO L290 TraceCheckUtils]: 3: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,652 INFO L290 TraceCheckUtils]: 4: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,653 INFO L290 TraceCheckUtils]: 5: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,653 INFO L290 TraceCheckUtils]: 6: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,654 INFO L290 TraceCheckUtils]: 7: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,654 INFO L290 TraceCheckUtils]: 8: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,655 INFO L290 TraceCheckUtils]: 10: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,656 INFO L290 TraceCheckUtils]: 11: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,656 INFO L290 TraceCheckUtils]: 12: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,657 INFO L290 TraceCheckUtils]: 13: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,657 INFO L290 TraceCheckUtils]: 14: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,658 INFO L290 TraceCheckUtils]: 15: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,658 INFO L290 TraceCheckUtils]: 16: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,659 INFO L290 TraceCheckUtils]: 17: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,659 INFO L290 TraceCheckUtils]: 18: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5102#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:43,660 INFO L290 TraceCheckUtils]: 19: Hoare triple {5102#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,660 INFO L290 TraceCheckUtils]: 20: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,661 INFO L290 TraceCheckUtils]: 21: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,661 INFO L290 TraceCheckUtils]: 22: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,662 INFO L290 TraceCheckUtils]: 24: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,663 INFO L290 TraceCheckUtils]: 26: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,664 INFO L290 TraceCheckUtils]: 29: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,665 INFO L290 TraceCheckUtils]: 30: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,665 INFO L290 TraceCheckUtils]: 31: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,666 INFO L290 TraceCheckUtils]: 32: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,666 INFO L290 TraceCheckUtils]: 33: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,667 INFO L290 TraceCheckUtils]: 34: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,667 INFO L290 TraceCheckUtils]: 35: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,668 INFO L290 TraceCheckUtils]: 36: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#res#1 := foo_~i~0#1; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,668 INFO L290 TraceCheckUtils]: 37: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:43,669 INFO L290 TraceCheckUtils]: 38: Hoare triple {5103#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (<= (+ (* |ULTIMATE.start_main_~i~1#1| 4) 124) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {5100#false} is VALID [2022-02-20 23:49:43,669 INFO L134 CoverageAnalysis]: Checked inductivity of 65 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:43,669 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:43,669 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1089698122] [2022-02-20 23:49:43,669 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1089698122] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:43,670 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1050876081] [2022-02-20 23:49:43,670 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:49:43,670 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:43,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:43,671 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 23:49:43,672 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 23:49:43,728 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:49:43,728 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:43,729 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:49:43,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:43,738 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:43,776 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:49:43,776 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:49:43,799 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 8 [2022-02-20 23:49:44,111 INFO L290 TraceCheckUtils]: 0: Hoare triple {5099#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5099#true} is VALID [2022-02-20 23:49:44,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {5099#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,113 INFO L290 TraceCheckUtils]: 2: Hoare triple {5101#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (not (= |ULTIMATE.start_main_~#mask~0#1.base| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,114 INFO L290 TraceCheckUtils]: 3: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,114 INFO L290 TraceCheckUtils]: 4: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,115 INFO L290 TraceCheckUtils]: 6: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,115 INFO L290 TraceCheckUtils]: 7: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,115 INFO L290 TraceCheckUtils]: 8: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,116 INFO L290 TraceCheckUtils]: 9: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,116 INFO L290 TraceCheckUtils]: 10: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,117 INFO L290 TraceCheckUtils]: 11: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,117 INFO L290 TraceCheckUtils]: 12: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,117 INFO L290 TraceCheckUtils]: 13: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,118 INFO L290 TraceCheckUtils]: 14: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,118 INFO L290 TraceCheckUtils]: 15: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,118 INFO L290 TraceCheckUtils]: 16: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,119 INFO L290 TraceCheckUtils]: 17: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,119 INFO L290 TraceCheckUtils]: 18: Hoare triple {5113#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,120 INFO L290 TraceCheckUtils]: 19: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,120 INFO L290 TraceCheckUtils]: 20: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,120 INFO L290 TraceCheckUtils]: 21: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,121 INFO L290 TraceCheckUtils]: 23: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,121 INFO L290 TraceCheckUtils]: 24: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,122 INFO L290 TraceCheckUtils]: 25: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,122 INFO L290 TraceCheckUtils]: 26: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,123 INFO L290 TraceCheckUtils]: 27: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,123 INFO L290 TraceCheckUtils]: 28: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,123 INFO L290 TraceCheckUtils]: 29: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,124 INFO L290 TraceCheckUtils]: 30: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,124 INFO L290 TraceCheckUtils]: 31: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,124 INFO L290 TraceCheckUtils]: 32: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,125 INFO L290 TraceCheckUtils]: 33: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,125 INFO L290 TraceCheckUtils]: 34: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,125 INFO L290 TraceCheckUtils]: 35: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,126 INFO L290 TraceCheckUtils]: 36: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,126 INFO L290 TraceCheckUtils]: 37: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,127 INFO L290 TraceCheckUtils]: 38: Hoare triple {5162#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 1) (<= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {5100#false} is VALID [2022-02-20 23:49:44,127 INFO L134 CoverageAnalysis]: Checked inductivity of 65 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:44,127 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:44,542 INFO L290 TraceCheckUtils]: 38: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {5100#false} is VALID [2022-02-20 23:49:44,542 INFO L290 TraceCheckUtils]: 37: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,543 INFO L290 TraceCheckUtils]: 36: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,543 INFO L290 TraceCheckUtils]: 35: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,544 INFO L290 TraceCheckUtils]: 34: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,544 INFO L290 TraceCheckUtils]: 33: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,544 INFO L290 TraceCheckUtils]: 32: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,545 INFO L290 TraceCheckUtils]: 31: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,545 INFO L290 TraceCheckUtils]: 30: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,546 INFO L290 TraceCheckUtils]: 29: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,546 INFO L290 TraceCheckUtils]: 28: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,547 INFO L290 TraceCheckUtils]: 27: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,547 INFO L290 TraceCheckUtils]: 26: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,549 INFO L290 TraceCheckUtils]: 21: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,550 INFO L290 TraceCheckUtils]: 20: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,550 INFO L290 TraceCheckUtils]: 19: Hoare triple {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,551 INFO L290 TraceCheckUtils]: 18: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5223#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:44,551 INFO L290 TraceCheckUtils]: 17: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} havoc main_#t~ret3#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,552 INFO L290 TraceCheckUtils]: 15: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,553 INFO L290 TraceCheckUtils]: 14: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} foo_#res#1 := foo_~i~0#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,553 INFO L290 TraceCheckUtils]: 13: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,553 INFO L290 TraceCheckUtils]: 12: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,554 INFO L290 TraceCheckUtils]: 11: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,554 INFO L290 TraceCheckUtils]: 10: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,555 INFO L290 TraceCheckUtils]: 9: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,555 INFO L290 TraceCheckUtils]: 8: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,556 INFO L290 TraceCheckUtils]: 6: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,557 INFO L290 TraceCheckUtils]: 4: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,557 INFO L290 TraceCheckUtils]: 3: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,559 INFO L290 TraceCheckUtils]: 1: Hoare triple {5099#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5284#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:44,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {5099#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5099#true} is VALID [2022-02-20 23:49:44,559 INFO L134 CoverageAnalysis]: Checked inductivity of 65 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:44,559 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1050876081] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:44,560 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:44,560 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 3] total 8 [2022-02-20 23:49:44,562 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [610790530] [2022-02-20 23:49:44,562 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:44,562 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 39 [2022-02-20 23:49:44,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:44,563 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 23:49:44,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:44,629 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:49:44,629 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:44,630 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:49:44,630 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:44,630 INFO L87 Difference]: Start difference. First operand 66 states and 69 transitions. Second operand has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 23:49:44,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:44,865 INFO L93 Difference]: Finished difference Result 158 states and 169 transitions. [2022-02-20 23:49:44,865 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:49:44,865 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 39 [2022-02-20 23:49:44,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:44,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 23:49:44,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 86 transitions. [2022-02-20 23:49:44,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 23:49:44,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 86 transitions. [2022-02-20 23:49:44,867 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 86 transitions. [2022-02-20 23:49:44,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:44,920 INFO L225 Difference]: With dead ends: 158 [2022-02-20 23:49:44,920 INFO L226 Difference]: Without dead ends: 158 [2022-02-20 23:49:44,920 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 72 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:49:44,920 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 33 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 96 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:44,921 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 90 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:44,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-02-20 23:49:44,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 150. [2022-02-20 23:49:44,923 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:44,923 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 23:49:44,923 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 23:49:44,923 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 23:49:44,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:44,925 INFO L93 Difference]: Finished difference Result 158 states and 169 transitions. [2022-02-20 23:49:44,925 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 169 transitions. [2022-02-20 23:49:44,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:44,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:44,926 INFO L74 IsIncluded]: Start isIncluded. First operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 158 states. [2022-02-20 23:49:44,926 INFO L87 Difference]: Start difference. First operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 158 states. [2022-02-20 23:49:44,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:44,928 INFO L93 Difference]: Finished difference Result 158 states and 169 transitions. [2022-02-20 23:49:44,928 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 169 transitions. [2022-02-20 23:49:44,928 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:44,928 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:44,928 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:44,928 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:44,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 145 states have (on average 1.1517241379310346) internal successors, (167), 149 states have internal predecessors, (167), 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 23:49:44,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 167 transitions. [2022-02-20 23:49:44,930 INFO L78 Accepts]: Start accepts. Automaton has 150 states and 167 transitions. Word has length 39 [2022-02-20 23:49:44,930 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:44,930 INFO L470 AbstractCegarLoop]: Abstraction has 150 states and 167 transitions. [2022-02-20 23:49:44,931 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 8.625) internal successors, (69), 9 states have internal predecessors, (69), 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 23:49:44,931 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 167 transitions. [2022-02-20 23:49:44,931 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:49:44,931 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:44,931 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:44,949 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 23:49:45,143 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,SelfDestructingSolverStorable15 [2022-02-20 23:49:45,143 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:45,144 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:45,144 INFO L85 PathProgramCache]: Analyzing trace with hash -890031373, now seen corresponding path program 1 times [2022-02-20 23:49:45,144 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:45,144 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1939638742] [2022-02-20 23:49:45,144 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:45,144 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:45,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:45,244 INFO L290 TraceCheckUtils]: 0: Hoare triple {5966#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5966#true} is VALID [2022-02-20 23:49:45,245 INFO L290 TraceCheckUtils]: 1: Hoare triple {5966#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,245 INFO L290 TraceCheckUtils]: 2: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,245 INFO L290 TraceCheckUtils]: 3: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,246 INFO L290 TraceCheckUtils]: 4: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,246 INFO L290 TraceCheckUtils]: 5: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,246 INFO L290 TraceCheckUtils]: 6: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,246 INFO L290 TraceCheckUtils]: 7: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,247 INFO L290 TraceCheckUtils]: 8: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,263 INFO L290 TraceCheckUtils]: 10: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,264 INFO L290 TraceCheckUtils]: 11: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,264 INFO L290 TraceCheckUtils]: 12: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,265 INFO L290 TraceCheckUtils]: 15: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,265 INFO L290 TraceCheckUtils]: 17: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {5968#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:45,266 INFO L290 TraceCheckUtils]: 19: Hoare triple {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,266 INFO L290 TraceCheckUtils]: 20: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,266 INFO L290 TraceCheckUtils]: 21: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,267 INFO L290 TraceCheckUtils]: 22: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,267 INFO L290 TraceCheckUtils]: 23: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,267 INFO L290 TraceCheckUtils]: 24: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,267 INFO L290 TraceCheckUtils]: 25: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} is VALID [2022-02-20 23:49:45,268 INFO L290 TraceCheckUtils]: 26: Hoare triple {5970#(<= |ULTIMATE.start_foo_~size#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,268 INFO L290 TraceCheckUtils]: 27: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,268 INFO L290 TraceCheckUtils]: 28: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,269 INFO L290 TraceCheckUtils]: 29: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,269 INFO L290 TraceCheckUtils]: 30: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,269 INFO L290 TraceCheckUtils]: 31: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,269 INFO L290 TraceCheckUtils]: 32: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,270 INFO L290 TraceCheckUtils]: 33: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,270 INFO L290 TraceCheckUtils]: 34: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,270 INFO L290 TraceCheckUtils]: 35: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,270 INFO L290 TraceCheckUtils]: 36: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,271 INFO L290 TraceCheckUtils]: 37: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,271 INFO L290 TraceCheckUtils]: 38: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,271 INFO L290 TraceCheckUtils]: 39: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5974#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,272 INFO L290 TraceCheckUtils]: 40: Hoare triple {5974#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5967#false} is VALID [2022-02-20 23:49:45,272 INFO L290 TraceCheckUtils]: 41: Hoare triple {5967#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {5967#false} is VALID [2022-02-20 23:49:45,272 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 19 proven. 67 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-20 23:49:45,272 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:45,272 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1939638742] [2022-02-20 23:49:45,272 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1939638742] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:45,272 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [355676873] [2022-02-20 23:49:45,272 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:45,272 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:45,272 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:45,273 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 23:49:45,288 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 23:49:45,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:45,353 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:49:45,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:45,363 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:45,561 INFO L290 TraceCheckUtils]: 0: Hoare triple {5966#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5966#true} is VALID [2022-02-20 23:49:45,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {5966#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,563 INFO L290 TraceCheckUtils]: 3: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,563 INFO L290 TraceCheckUtils]: 4: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,564 INFO L290 TraceCheckUtils]: 6: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,564 INFO L290 TraceCheckUtils]: 7: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,564 INFO L290 TraceCheckUtils]: 9: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,565 INFO L290 TraceCheckUtils]: 10: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,565 INFO L290 TraceCheckUtils]: 11: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,566 INFO L290 TraceCheckUtils]: 15: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,566 INFO L290 TraceCheckUtils]: 17: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,567 INFO L290 TraceCheckUtils]: 18: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:45,567 INFO L290 TraceCheckUtils]: 19: Hoare triple {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,567 INFO L290 TraceCheckUtils]: 20: Hoare triple {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,568 INFO L290 TraceCheckUtils]: 21: Hoare triple {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,575 INFO L290 TraceCheckUtils]: 23: Hoare triple {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,576 INFO L290 TraceCheckUtils]: 24: Hoare triple {6036#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,576 INFO L290 TraceCheckUtils]: 26: Hoare triple {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,577 INFO L290 TraceCheckUtils]: 27: Hoare triple {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,577 INFO L290 TraceCheckUtils]: 28: Hoare triple {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,577 INFO L290 TraceCheckUtils]: 29: Hoare triple {6052#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,578 INFO L290 TraceCheckUtils]: 31: Hoare triple {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,578 INFO L290 TraceCheckUtils]: 32: Hoare triple {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,586 INFO L290 TraceCheckUtils]: 33: Hoare triple {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {6068#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6084#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:45,587 INFO L290 TraceCheckUtils]: 35: Hoare triple {6084#(and (<= |ULTIMATE.start_foo_~size#1| 1) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5967#false} is VALID [2022-02-20 23:49:45,587 INFO L290 TraceCheckUtils]: 36: Hoare triple {5967#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5967#false} is VALID [2022-02-20 23:49:45,587 INFO L290 TraceCheckUtils]: 37: Hoare triple {5967#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5967#false} is VALID [2022-02-20 23:49:45,587 INFO L290 TraceCheckUtils]: 38: Hoare triple {5967#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5967#false} is VALID [2022-02-20 23:49:45,588 INFO L290 TraceCheckUtils]: 39: Hoare triple {5967#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5967#false} is VALID [2022-02-20 23:49:45,588 INFO L290 TraceCheckUtils]: 40: Hoare triple {5967#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5967#false} is VALID [2022-02-20 23:49:45,588 INFO L290 TraceCheckUtils]: 41: Hoare triple {5967#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {5967#false} is VALID [2022-02-20 23:49:45,588 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 50 proven. 37 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:49:45,588 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:45,740 INFO L290 TraceCheckUtils]: 41: Hoare triple {5967#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {5967#false} is VALID [2022-02-20 23:49:45,740 INFO L290 TraceCheckUtils]: 40: Hoare triple {5967#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5967#false} is VALID [2022-02-20 23:49:45,740 INFO L290 TraceCheckUtils]: 39: Hoare triple {5967#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5967#false} is VALID [2022-02-20 23:49:45,740 INFO L290 TraceCheckUtils]: 38: Hoare triple {5967#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5967#false} is VALID [2022-02-20 23:49:45,741 INFO L290 TraceCheckUtils]: 37: Hoare triple {5967#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5967#false} is VALID [2022-02-20 23:49:45,741 INFO L290 TraceCheckUtils]: 36: Hoare triple {5967#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5967#false} is VALID [2022-02-20 23:49:45,741 INFO L290 TraceCheckUtils]: 35: Hoare triple {5974#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5967#false} is VALID [2022-02-20 23:49:45,741 INFO L290 TraceCheckUtils]: 34: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5974#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,742 INFO L290 TraceCheckUtils]: 33: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,742 INFO L290 TraceCheckUtils]: 32: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,743 INFO L290 TraceCheckUtils]: 30: Hoare triple {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,743 INFO L290 TraceCheckUtils]: 29: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5973#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,753 INFO L290 TraceCheckUtils]: 28: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,754 INFO L290 TraceCheckUtils]: 27: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,755 INFO L290 TraceCheckUtils]: 24: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5972#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:45,756 INFO L290 TraceCheckUtils]: 23: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,756 INFO L290 TraceCheckUtils]: 22: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,757 INFO L290 TraceCheckUtils]: 21: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,758 INFO L290 TraceCheckUtils]: 19: Hoare triple {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5971#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:45,758 INFO L290 TraceCheckUtils]: 18: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {5969#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:45,759 INFO L290 TraceCheckUtils]: 17: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,759 INFO L290 TraceCheckUtils]: 16: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,760 INFO L290 TraceCheckUtils]: 15: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,761 INFO L290 TraceCheckUtils]: 12: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,762 INFO L290 TraceCheckUtils]: 11: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,762 INFO L290 TraceCheckUtils]: 10: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,762 INFO L290 TraceCheckUtils]: 9: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,764 INFO L290 TraceCheckUtils]: 6: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,765 INFO L290 TraceCheckUtils]: 4: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,765 INFO L290 TraceCheckUtils]: 3: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,766 INFO L290 TraceCheckUtils]: 1: Hoare triple {5966#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {5981#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:45,766 INFO L290 TraceCheckUtils]: 0: Hoare triple {5966#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5966#true} is VALID [2022-02-20 23:49:45,767 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 50 proven. 37 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:49:45,767 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [355676873] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:45,767 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:45,767 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 14 [2022-02-20 23:49:45,767 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1994810038] [2022-02-20 23:49:45,767 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:45,768 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 42 [2022-02-20 23:49:45,768 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:45,769 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 23:49:45,827 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:45,828 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:49:45,828 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:45,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:49:45,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=128, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:49:45,829 INFO L87 Difference]: Start difference. First operand 150 states and 167 transitions. Second operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 23:49:46,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:46,277 INFO L93 Difference]: Finished difference Result 165 states and 178 transitions. [2022-02-20 23:49:46,277 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:49:46,277 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 42 [2022-02-20 23:49:46,277 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:46,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 23:49:46,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 96 transitions. [2022-02-20 23:49:46,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 23:49:46,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 96 transitions. [2022-02-20 23:49:46,279 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 96 transitions. [2022-02-20 23:49:46,341 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:46,342 INFO L225 Difference]: With dead ends: 165 [2022-02-20 23:49:46,343 INFO L226 Difference]: Without dead ends: 165 [2022-02-20 23:49:46,343 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 78 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=199, Invalid=401, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:49:46,343 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 121 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 195 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 121 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 195 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:46,344 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [121 Valid, 80 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 195 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:46,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 165 states. [2022-02-20 23:49:46,345 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 165 to 143. [2022-02-20 23:49:46,346 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:46,346 INFO L82 GeneralOperation]: Start isEquivalent. First operand 165 states. Second operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 23:49:46,346 INFO L74 IsIncluded]: Start isIncluded. First operand 165 states. Second operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 23:49:46,346 INFO L87 Difference]: Start difference. First operand 165 states. Second operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 23:49:46,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:46,348 INFO L93 Difference]: Finished difference Result 165 states and 178 transitions. [2022-02-20 23:49:46,348 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 178 transitions. [2022-02-20 23:49:46,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:46,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:46,349 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 165 states. [2022-02-20 23:49:46,349 INFO L87 Difference]: Start difference. First operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 165 states. [2022-02-20 23:49:46,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:46,351 INFO L93 Difference]: Finished difference Result 165 states and 178 transitions. [2022-02-20 23:49:46,351 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 178 transitions. [2022-02-20 23:49:46,351 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:46,351 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:46,351 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:46,351 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:46,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 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 23:49:46,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 156 transitions. [2022-02-20 23:49:46,353 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 156 transitions. Word has length 42 [2022-02-20 23:49:46,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:46,353 INFO L470 AbstractCegarLoop]: Abstraction has 143 states and 156 transitions. [2022-02-20 23:49:46,353 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 14 states have internal predecessors, (74), 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 23:49:46,354 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 156 transitions. [2022-02-20 23:49:46,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-20 23:49:46,354 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:46,354 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:46,372 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 23:49:46,568 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-02-20 23:49:46,569 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:46,569 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:46,569 INFO L85 PathProgramCache]: Analyzing trace with hash -255177540, now seen corresponding path program 2 times [2022-02-20 23:49:46,569 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:46,569 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1701555247] [2022-02-20 23:49:46,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:46,570 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:46,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:46,676 INFO L290 TraceCheckUtils]: 0: Hoare triple {6888#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6888#true} is VALID [2022-02-20 23:49:46,676 INFO L290 TraceCheckUtils]: 1: Hoare triple {6888#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,677 INFO L290 TraceCheckUtils]: 2: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,677 INFO L290 TraceCheckUtils]: 3: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,677 INFO L290 TraceCheckUtils]: 4: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,678 INFO L290 TraceCheckUtils]: 6: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,679 INFO L290 TraceCheckUtils]: 7: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,679 INFO L290 TraceCheckUtils]: 8: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,679 INFO L290 TraceCheckUtils]: 9: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,680 INFO L290 TraceCheckUtils]: 10: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,680 INFO L290 TraceCheckUtils]: 11: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,681 INFO L290 TraceCheckUtils]: 14: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,682 INFO L290 TraceCheckUtils]: 16: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,682 INFO L290 TraceCheckUtils]: 17: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:46,683 INFO L290 TraceCheckUtils]: 18: Hoare triple {6890#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,684 INFO L290 TraceCheckUtils]: 21: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,685 INFO L290 TraceCheckUtils]: 22: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,685 INFO L290 TraceCheckUtils]: 23: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,685 INFO L290 TraceCheckUtils]: 24: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,686 INFO L290 TraceCheckUtils]: 25: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,687 INFO L290 TraceCheckUtils]: 27: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,687 INFO L290 TraceCheckUtils]: 28: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,688 INFO L290 TraceCheckUtils]: 29: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,689 INFO L290 TraceCheckUtils]: 32: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,689 INFO L290 TraceCheckUtils]: 33: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,689 INFO L290 TraceCheckUtils]: 34: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,690 INFO L290 TraceCheckUtils]: 35: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,690 INFO L290 TraceCheckUtils]: 36: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#res#1 := foo_~i~0#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,691 INFO L290 TraceCheckUtils]: 37: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,691 INFO L290 TraceCheckUtils]: 38: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,692 INFO L290 TraceCheckUtils]: 39: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} havoc main_#t~ret3#1; {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:46,692 INFO L290 TraceCheckUtils]: 40: Hoare triple {6891#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {6892#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 41: Hoare triple {6892#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)))} assume !(main_~i~1#1 % 4294967296 < 32); {6889#false} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 42: Hoare triple {6889#false} main_~i~1#1 := 0; {6889#false} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 43: Hoare triple {6889#false} assume !!(main_~i~1#1 % 4294967296 < 32); {6889#false} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 44: Hoare triple {6889#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {6889#false} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 45: Hoare triple {6889#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {6889#false} is VALID [2022-02-20 23:49:46,693 INFO L290 TraceCheckUtils]: 46: Hoare triple {6889#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {6889#false} is VALID [2022-02-20 23:49:46,694 INFO L290 TraceCheckUtils]: 47: Hoare triple {6889#false} assume !!(main_~i~1#1 % 4294967296 < 32); {6889#false} is VALID [2022-02-20 23:49:46,694 INFO L290 TraceCheckUtils]: 48: Hoare triple {6889#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {6889#false} is VALID [2022-02-20 23:49:46,694 INFO L134 CoverageAnalysis]: Checked inductivity of 71 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-02-20 23:49:46,694 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:46,694 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1701555247] [2022-02-20 23:49:46,695 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1701555247] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:46,695 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1667154006] [2022-02-20 23:49:46,703 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:49:46,703 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:46,704 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:46,720 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 23:49:46,725 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 23:49:46,787 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:49:46,787 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:46,788 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:49:46,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:46,872 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:47,395 INFO L290 TraceCheckUtils]: 0: Hoare triple {6888#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6888#true} is VALID [2022-02-20 23:49:47,396 INFO L290 TraceCheckUtils]: 1: Hoare triple {6888#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,397 INFO L290 TraceCheckUtils]: 2: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,397 INFO L290 TraceCheckUtils]: 3: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,397 INFO L290 TraceCheckUtils]: 4: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,410 INFO L290 TraceCheckUtils]: 6: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,412 INFO L290 TraceCheckUtils]: 10: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,412 INFO L290 TraceCheckUtils]: 11: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,413 INFO L290 TraceCheckUtils]: 12: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,413 INFO L290 TraceCheckUtils]: 13: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,414 INFO L290 TraceCheckUtils]: 14: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,414 INFO L290 TraceCheckUtils]: 15: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,415 INFO L290 TraceCheckUtils]: 16: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,416 INFO L290 TraceCheckUtils]: 17: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} havoc main_#t~ret3#1; {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,416 INFO L290 TraceCheckUtils]: 18: Hoare triple {6899#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,417 INFO L290 TraceCheckUtils]: 19: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,418 INFO L290 TraceCheckUtils]: 20: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,418 INFO L290 TraceCheckUtils]: 21: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,419 INFO L290 TraceCheckUtils]: 22: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,419 INFO L290 TraceCheckUtils]: 23: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,420 INFO L290 TraceCheckUtils]: 25: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,421 INFO L290 TraceCheckUtils]: 26: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,421 INFO L290 TraceCheckUtils]: 27: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,422 INFO L290 TraceCheckUtils]: 28: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,422 INFO L290 TraceCheckUtils]: 29: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,423 INFO L290 TraceCheckUtils]: 30: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,424 INFO L290 TraceCheckUtils]: 31: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,424 INFO L290 TraceCheckUtils]: 32: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,425 INFO L290 TraceCheckUtils]: 33: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,426 INFO L290 TraceCheckUtils]: 35: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,426 INFO L290 TraceCheckUtils]: 36: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,427 INFO L290 TraceCheckUtils]: 37: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,428 INFO L290 TraceCheckUtils]: 38: Hoare triple {6951#(and (<= 1 |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,428 INFO L290 TraceCheckUtils]: 39: Hoare triple {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} havoc main_#t~ret3#1; {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,429 INFO L290 TraceCheckUtils]: 40: Hoare triple {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,430 INFO L290 TraceCheckUtils]: 41: Hoare triple {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(main_~i~1#1 % 4294967296 < 32); {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {7012#(and (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_~i~1#1 := 0; {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,431 INFO L290 TraceCheckUtils]: 43: Hoare triple {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32); {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,431 INFO L290 TraceCheckUtils]: 44: Hoare triple {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,432 INFO L290 TraceCheckUtils]: 45: Hoare triple {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,433 INFO L290 TraceCheckUtils]: 46: Hoare triple {7025#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {7038#(and (= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,433 INFO L290 TraceCheckUtils]: 47: Hoare triple {7038#(and (= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32); {7038#(and (= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} is VALID [2022-02-20 23:49:47,434 INFO L290 TraceCheckUtils]: 48: Hoare triple {7038#(and (= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 (div (+ (- 4) (* (- 1) |ULTIMATE.start_main_~#b~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) 4)) (<= 0 |ULTIMATE.start_main_~#b~0#1.offset|))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {6889#false} is VALID [2022-02-20 23:49:47,435 INFO L134 CoverageAnalysis]: Checked inductivity of 71 backedges. 40 proven. 6 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:47,435 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:47,617 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 21 [2022-02-20 23:49:48,077 INFO L290 TraceCheckUtils]: 48: Hoare triple {7045#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {6889#false} is VALID [2022-02-20 23:49:48,077 INFO L290 TraceCheckUtils]: 47: Hoare triple {7045#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {7045#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,078 INFO L290 TraceCheckUtils]: 46: Hoare triple {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {7045#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,079 INFO L290 TraceCheckUtils]: 45: Hoare triple {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:48,080 INFO L290 TraceCheckUtils]: 44: Hoare triple {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:48,080 INFO L290 TraceCheckUtils]: 43: Hoare triple {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} assume !!(main_~i~1#1 % 4294967296 < 32); {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:48,081 INFO L290 TraceCheckUtils]: 42: Hoare triple {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_~i~1#1 := 0; {7052#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4)))} is VALID [2022-02-20 23:49:48,081 INFO L290 TraceCheckUtils]: 41: Hoare triple {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(main_~i~1#1 % 4294967296 < 32); {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,082 INFO L290 TraceCheckUtils]: 40: Hoare triple {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,082 INFO L290 TraceCheckUtils]: 39: Hoare triple {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,083 INFO L290 TraceCheckUtils]: 38: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7065#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:48,084 INFO L290 TraceCheckUtils]: 37: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,084 INFO L290 TraceCheckUtils]: 36: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_#res#1 := foo_~i~0#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,085 INFO L290 TraceCheckUtils]: 35: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,085 INFO L290 TraceCheckUtils]: 34: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,086 INFO L290 TraceCheckUtils]: 33: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,086 INFO L290 TraceCheckUtils]: 32: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,087 INFO L290 TraceCheckUtils]: 31: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,087 INFO L290 TraceCheckUtils]: 30: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,089 INFO L290 TraceCheckUtils]: 27: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,089 INFO L290 TraceCheckUtils]: 26: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,090 INFO L290 TraceCheckUtils]: 25: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,090 INFO L290 TraceCheckUtils]: 24: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,091 INFO L290 TraceCheckUtils]: 23: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,091 INFO L290 TraceCheckUtils]: 22: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,092 INFO L290 TraceCheckUtils]: 21: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,092 INFO L290 TraceCheckUtils]: 20: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,093 INFO L290 TraceCheckUtils]: 19: Hoare triple {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,094 INFO L290 TraceCheckUtils]: 18: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7078#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)) (<= 4 (* |ULTIMATE.start_main_~i~1#1| 4)))} is VALID [2022-02-20 23:49:48,094 INFO L290 TraceCheckUtils]: 17: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} havoc main_#t~ret3#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,095 INFO L290 TraceCheckUtils]: 16: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,095 INFO L290 TraceCheckUtils]: 15: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,096 INFO L290 TraceCheckUtils]: 14: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} foo_#res#1 := foo_~i~0#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,097 INFO L290 TraceCheckUtils]: 11: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,098 INFO L290 TraceCheckUtils]: 10: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,098 INFO L290 TraceCheckUtils]: 9: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,099 INFO L290 TraceCheckUtils]: 8: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,099 INFO L290 TraceCheckUtils]: 7: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,100 INFO L290 TraceCheckUtils]: 6: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,100 INFO L290 TraceCheckUtils]: 5: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,101 INFO L290 TraceCheckUtils]: 4: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,101 INFO L290 TraceCheckUtils]: 3: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {6888#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {7139#(and (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| 4)))} is VALID [2022-02-20 23:49:48,103 INFO L290 TraceCheckUtils]: 0: Hoare triple {6888#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6888#true} is VALID [2022-02-20 23:49:48,103 INFO L134 CoverageAnalysis]: Checked inductivity of 71 backedges. 40 proven. 6 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:48,103 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1667154006] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:48,104 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:48,104 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 6, 6] total 15 [2022-02-20 23:49:48,104 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1634531445] [2022-02-20 23:49:48,104 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:48,105 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 49 [2022-02-20 23:49:48,105 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:48,105 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 23:49:48,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:48,196 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-20 23:49:48,196 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:48,196 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-20 23:49:48,196 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:49:48,197 INFO L87 Difference]: Start difference. First operand 143 states and 156 transitions. Second operand has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 23:49:48,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:48,578 INFO L93 Difference]: Finished difference Result 153 states and 163 transitions. [2022-02-20 23:49:48,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:49:48,578 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 49 [2022-02-20 23:49:48,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:48,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 23:49:48,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 81 transitions. [2022-02-20 23:49:48,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 23:49:48,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 81 transitions. [2022-02-20 23:49:48,579 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 81 transitions. [2022-02-20 23:49:48,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:48,647 INFO L225 Difference]: With dead ends: 153 [2022-02-20 23:49:48,647 INFO L226 Difference]: Without dead ends: 153 [2022-02-20 23:49:48,647 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 88 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=97, Invalid=245, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:49:48,647 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 160 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 123 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 160 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 123 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:48,648 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [160 Valid, 111 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 123 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:48,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2022-02-20 23:49:48,649 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 147. [2022-02-20 23:49:48,652 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:48,652 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 23:49:48,652 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 23:49:48,652 INFO L87 Difference]: Start difference. First operand 153 states. Second operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 23:49:48,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:48,654 INFO L93 Difference]: Finished difference Result 153 states and 163 transitions. [2022-02-20 23:49:48,654 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 163 transitions. [2022-02-20 23:49:48,654 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:48,654 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:48,655 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 153 states. [2022-02-20 23:49:48,655 INFO L87 Difference]: Start difference. First operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 153 states. [2022-02-20 23:49:48,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:48,661 INFO L93 Difference]: Finished difference Result 153 states and 163 transitions. [2022-02-20 23:49:48,661 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 163 transitions. [2022-02-20 23:49:48,661 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:48,661 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:48,661 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:48,662 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:48,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 142 states have (on average 1.119718309859155) internal successors, (159), 146 states have internal predecessors, (159), 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 23:49:48,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 159 transitions. [2022-02-20 23:49:48,663 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 159 transitions. Word has length 49 [2022-02-20 23:49:48,663 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:48,664 INFO L470 AbstractCegarLoop]: Abstraction has 147 states and 159 transitions. [2022-02-20 23:49:48,664 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 6.6) internal successors, (99), 15 states have internal predecessors, (99), 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 23:49:48,664 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 159 transitions. [2022-02-20 23:49:48,664 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-02-20 23:49:48,664 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:48,664 INFO L514 BasicCegarLoop]: trace histogram [10, 9, 9, 9, 9, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1] [2022-02-20 23:49:48,682 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:48,882 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-02-20 23:49:48,882 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:48,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:48,883 INFO L85 PathProgramCache]: Analyzing trace with hash 11435127, now seen corresponding path program 2 times [2022-02-20 23:49:48,883 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:48,883 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [634680082] [2022-02-20 23:49:48,883 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:48,883 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:48,911 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:48,980 INFO L290 TraceCheckUtils]: 0: Hoare triple {7807#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7807#true} is VALID [2022-02-20 23:49:48,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {7807#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,981 INFO L290 TraceCheckUtils]: 2: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,981 INFO L290 TraceCheckUtils]: 3: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,982 INFO L290 TraceCheckUtils]: 4: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,982 INFO L290 TraceCheckUtils]: 6: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,983 INFO L290 TraceCheckUtils]: 8: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,983 INFO L290 TraceCheckUtils]: 9: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,983 INFO L290 TraceCheckUtils]: 10: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,984 INFO L290 TraceCheckUtils]: 11: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,984 INFO L290 TraceCheckUtils]: 12: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,984 INFO L290 TraceCheckUtils]: 13: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,985 INFO L290 TraceCheckUtils]: 15: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,985 INFO L290 TraceCheckUtils]: 16: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,985 INFO L290 TraceCheckUtils]: 17: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:48,986 INFO L290 TraceCheckUtils]: 18: Hoare triple {7809#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,986 INFO L290 TraceCheckUtils]: 19: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,987 INFO L290 TraceCheckUtils]: 21: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,987 INFO L290 TraceCheckUtils]: 22: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,987 INFO L290 TraceCheckUtils]: 23: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,988 INFO L290 TraceCheckUtils]: 25: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,988 INFO L290 TraceCheckUtils]: 26: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,988 INFO L290 TraceCheckUtils]: 27: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,992 INFO L290 TraceCheckUtils]: 28: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,992 INFO L290 TraceCheckUtils]: 29: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,992 INFO L290 TraceCheckUtils]: 30: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,992 INFO L290 TraceCheckUtils]: 31: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,993 INFO L290 TraceCheckUtils]: 33: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,993 INFO L290 TraceCheckUtils]: 34: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,993 INFO L290 TraceCheckUtils]: 35: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,994 INFO L290 TraceCheckUtils]: 36: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,994 INFO L290 TraceCheckUtils]: 37: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,994 INFO L290 TraceCheckUtils]: 38: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,995 INFO L290 TraceCheckUtils]: 39: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:48,995 INFO L290 TraceCheckUtils]: 40: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:49:48,995 INFO L290 TraceCheckUtils]: 41: Hoare triple {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:48,996 INFO L290 TraceCheckUtils]: 42: Hoare triple {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:48,996 INFO L290 TraceCheckUtils]: 43: Hoare triple {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:48,999 INFO L290 TraceCheckUtils]: 44: Hoare triple {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:48,999 INFO L290 TraceCheckUtils]: 45: Hoare triple {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:48,999 INFO L290 TraceCheckUtils]: 46: Hoare triple {7812#(and (<= |ULTIMATE.start_foo_~size#1| 2) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,000 INFO L290 TraceCheckUtils]: 47: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,000 INFO L290 TraceCheckUtils]: 48: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,000 INFO L290 TraceCheckUtils]: 49: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,001 INFO L290 TraceCheckUtils]: 50: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,002 INFO L290 TraceCheckUtils]: 51: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,002 INFO L290 TraceCheckUtils]: 52: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,002 INFO L290 TraceCheckUtils]: 53: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,003 INFO L290 TraceCheckUtils]: 54: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,003 INFO L290 TraceCheckUtils]: 55: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,003 INFO L290 TraceCheckUtils]: 56: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,004 INFO L290 TraceCheckUtils]: 57: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,004 INFO L290 TraceCheckUtils]: 58: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,004 INFO L290 TraceCheckUtils]: 59: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,004 INFO L290 TraceCheckUtils]: 60: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,005 INFO L290 TraceCheckUtils]: 61: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7816#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,005 INFO L290 TraceCheckUtils]: 62: Hoare triple {7816#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7808#false} is VALID [2022-02-20 23:49:49,005 INFO L290 TraceCheckUtils]: 63: Hoare triple {7808#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {7808#false} is VALID [2022-02-20 23:49:49,006 INFO L134 CoverageAnalysis]: Checked inductivity of 227 backedges. 27 proven. 175 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:49,006 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:49,006 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [634680082] [2022-02-20 23:49:49,006 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [634680082] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:49,006 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [151808897] [2022-02-20 23:49:49,006 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:49:49,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:49,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:49,008 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:49,009 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-02-20 23:49:49,088 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:49:49,088 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:49,089 INFO L263 TraceCheckSpWp]: Trace formula consists of 245 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:49:49,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:49,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:49,485 INFO L290 TraceCheckUtils]: 0: Hoare triple {7807#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7807#true} is VALID [2022-02-20 23:49:49,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {7807#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,486 INFO L290 TraceCheckUtils]: 2: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,486 INFO L290 TraceCheckUtils]: 3: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,487 INFO L290 TraceCheckUtils]: 4: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,487 INFO L290 TraceCheckUtils]: 5: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,487 INFO L290 TraceCheckUtils]: 6: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,488 INFO L290 TraceCheckUtils]: 7: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,488 INFO L290 TraceCheckUtils]: 8: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,488 INFO L290 TraceCheckUtils]: 9: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,488 INFO L290 TraceCheckUtils]: 10: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,489 INFO L290 TraceCheckUtils]: 11: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,490 INFO L290 TraceCheckUtils]: 14: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,490 INFO L290 TraceCheckUtils]: 15: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,490 INFO L290 TraceCheckUtils]: 16: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,491 INFO L290 TraceCheckUtils]: 17: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,491 INFO L290 TraceCheckUtils]: 18: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,491 INFO L290 TraceCheckUtils]: 19: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,492 INFO L290 TraceCheckUtils]: 20: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,492 INFO L290 TraceCheckUtils]: 21: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,492 INFO L290 TraceCheckUtils]: 22: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,493 INFO L290 TraceCheckUtils]: 23: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,493 INFO L290 TraceCheckUtils]: 24: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,493 INFO L290 TraceCheckUtils]: 25: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,494 INFO L290 TraceCheckUtils]: 26: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,494 INFO L290 TraceCheckUtils]: 27: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,494 INFO L290 TraceCheckUtils]: 28: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,494 INFO L290 TraceCheckUtils]: 29: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,495 INFO L290 TraceCheckUtils]: 30: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,495 INFO L290 TraceCheckUtils]: 31: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,495 INFO L290 TraceCheckUtils]: 32: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,496 INFO L290 TraceCheckUtils]: 33: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,496 INFO L290 TraceCheckUtils]: 34: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,496 INFO L290 TraceCheckUtils]: 35: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,496 INFO L290 TraceCheckUtils]: 36: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,497 INFO L290 TraceCheckUtils]: 37: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,497 INFO L290 TraceCheckUtils]: 38: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,497 INFO L290 TraceCheckUtils]: 39: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,498 INFO L290 TraceCheckUtils]: 40: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:49:49,498 INFO L290 TraceCheckUtils]: 41: Hoare triple {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,499 INFO L290 TraceCheckUtils]: 42: Hoare triple {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,499 INFO L290 TraceCheckUtils]: 43: Hoare triple {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,499 INFO L290 TraceCheckUtils]: 44: Hoare triple {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,500 INFO L290 TraceCheckUtils]: 45: Hoare triple {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,500 INFO L290 TraceCheckUtils]: 46: Hoare triple {7944#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,500 INFO L290 TraceCheckUtils]: 47: Hoare triple {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,501 INFO L290 TraceCheckUtils]: 48: Hoare triple {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,501 INFO L290 TraceCheckUtils]: 49: Hoare triple {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,501 INFO L290 TraceCheckUtils]: 50: Hoare triple {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,502 INFO L290 TraceCheckUtils]: 51: Hoare triple {7960#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,502 INFO L290 TraceCheckUtils]: 52: Hoare triple {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,503 INFO L290 TraceCheckUtils]: 53: Hoare triple {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,503 INFO L290 TraceCheckUtils]: 54: Hoare triple {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,503 INFO L290 TraceCheckUtils]: 55: Hoare triple {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,504 INFO L290 TraceCheckUtils]: 56: Hoare triple {7976#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} is VALID [2022-02-20 23:49:49,504 INFO L290 TraceCheckUtils]: 57: Hoare triple {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} is VALID [2022-02-20 23:49:49,504 INFO L290 TraceCheckUtils]: 58: Hoare triple {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} is VALID [2022-02-20 23:49:49,505 INFO L290 TraceCheckUtils]: 59: Hoare triple {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} is VALID [2022-02-20 23:49:49,505 INFO L290 TraceCheckUtils]: 60: Hoare triple {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} is VALID [2022-02-20 23:49:49,506 INFO L290 TraceCheckUtils]: 61: Hoare triple {7992#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8008#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:49,506 INFO L290 TraceCheckUtils]: 62: Hoare triple {8008#(and (<= |ULTIMATE.start_foo_~size#1| 2) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7808#false} is VALID [2022-02-20 23:49:49,506 INFO L290 TraceCheckUtils]: 63: Hoare triple {7808#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {7808#false} is VALID [2022-02-20 23:49:49,507 INFO L134 CoverageAnalysis]: Checked inductivity of 227 backedges. 43 proven. 159 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:49,507 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:49,733 INFO L290 TraceCheckUtils]: 63: Hoare triple {7808#false} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {7808#false} is VALID [2022-02-20 23:49:49,733 INFO L290 TraceCheckUtils]: 62: Hoare triple {7816#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7808#false} is VALID [2022-02-20 23:49:49,734 INFO L290 TraceCheckUtils]: 61: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7816#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,734 INFO L290 TraceCheckUtils]: 60: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,736 INFO L290 TraceCheckUtils]: 59: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,736 INFO L290 TraceCheckUtils]: 58: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,737 INFO L290 TraceCheckUtils]: 57: Hoare triple {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,738 INFO L290 TraceCheckUtils]: 56: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7815#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,741 INFO L290 TraceCheckUtils]: 55: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,741 INFO L290 TraceCheckUtils]: 54: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,742 INFO L290 TraceCheckUtils]: 53: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,742 INFO L290 TraceCheckUtils]: 52: Hoare triple {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,742 INFO L290 TraceCheckUtils]: 51: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7814#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:49:49,743 INFO L290 TraceCheckUtils]: 50: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,743 INFO L290 TraceCheckUtils]: 49: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,744 INFO L290 TraceCheckUtils]: 48: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,744 INFO L290 TraceCheckUtils]: 47: Hoare triple {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,744 INFO L290 TraceCheckUtils]: 46: Hoare triple {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7813#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:49:49,745 INFO L290 TraceCheckUtils]: 45: Hoare triple {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:49,745 INFO L290 TraceCheckUtils]: 44: Hoare triple {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:49,745 INFO L290 TraceCheckUtils]: 43: Hoare triple {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:49,746 INFO L290 TraceCheckUtils]: 42: Hoare triple {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:49,746 INFO L290 TraceCheckUtils]: 41: Hoare triple {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {8066#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:49,747 INFO L290 TraceCheckUtils]: 40: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7811#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:49:49,747 INFO L290 TraceCheckUtils]: 39: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,747 INFO L290 TraceCheckUtils]: 38: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,748 INFO L290 TraceCheckUtils]: 37: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,748 INFO L290 TraceCheckUtils]: 36: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,748 INFO L290 TraceCheckUtils]: 35: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,749 INFO L290 TraceCheckUtils]: 34: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,749 INFO L290 TraceCheckUtils]: 33: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,749 INFO L290 TraceCheckUtils]: 32: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,750 INFO L290 TraceCheckUtils]: 31: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,753 INFO L290 TraceCheckUtils]: 30: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,753 INFO L290 TraceCheckUtils]: 29: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,754 INFO L290 TraceCheckUtils]: 28: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,754 INFO L290 TraceCheckUtils]: 27: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,755 INFO L290 TraceCheckUtils]: 24: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,755 INFO L290 TraceCheckUtils]: 23: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,756 INFO L290 TraceCheckUtils]: 22: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,756 INFO L290 TraceCheckUtils]: 21: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,756 INFO L290 TraceCheckUtils]: 20: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {7810#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:49:49,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,758 INFO L290 TraceCheckUtils]: 16: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,758 INFO L290 TraceCheckUtils]: 15: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,758 INFO L290 TraceCheckUtils]: 14: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,759 INFO L290 TraceCheckUtils]: 10: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,760 INFO L290 TraceCheckUtils]: 9: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,760 INFO L290 TraceCheckUtils]: 8: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,760 INFO L290 TraceCheckUtils]: 7: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,761 INFO L290 TraceCheckUtils]: 6: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,761 INFO L290 TraceCheckUtils]: 4: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,761 INFO L290 TraceCheckUtils]: 3: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {7807#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {7823#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:49,762 INFO L290 TraceCheckUtils]: 0: Hoare triple {7807#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7807#true} is VALID [2022-02-20 23:49:49,763 INFO L134 CoverageAnalysis]: Checked inductivity of 227 backedges. 43 proven. 159 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-02-20 23:49:49,763 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [151808897] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:49,763 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:49,763 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 17 [2022-02-20 23:49:49,763 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1767952478] [2022-02-20 23:49:49,763 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:49,764 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 64 [2022-02-20 23:49:49,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:49,764 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 23:49:49,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:49,821 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:49:49,821 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:49,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:49:49,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=74, Invalid=198, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:49:49,822 INFO L87 Difference]: Start difference. First operand 147 states and 159 transitions. Second operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 23:49:50,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:50,548 INFO L93 Difference]: Finished difference Result 199 states and 209 transitions. [2022-02-20 23:49:50,548 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-02-20 23:49:50,548 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 64 [2022-02-20 23:49:50,548 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:50,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 23:49:50,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 161 transitions. [2022-02-20 23:49:50,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 23:49:50,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 161 transitions. [2022-02-20 23:49:50,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 161 transitions. [2022-02-20 23:49:50,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:50,670 INFO L225 Difference]: With dead ends: 199 [2022-02-20 23:49:50,670 INFO L226 Difference]: Without dead ends: 199 [2022-02-20 23:49:50,671 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 120 SyntacticMatches, 1 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 329 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=401, Invalid=1005, Unknown=0, NotChecked=0, Total=1406 [2022-02-20 23:49:50,671 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 259 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 335 mSolverCounterSat, 68 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 259 SdHoareTripleChecker+Valid, 99 SdHoareTripleChecker+Invalid, 403 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 68 IncrementalHoareTripleChecker+Valid, 335 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:50,671 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [259 Valid, 99 Invalid, 403 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [68 Valid, 335 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:50,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 199 states. [2022-02-20 23:49:50,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 199 to 145. [2022-02-20 23:49:50,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:50,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 199 states. Second operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 23:49:50,673 INFO L74 IsIncluded]: Start isIncluded. First operand 199 states. Second operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 23:49:50,673 INFO L87 Difference]: Start difference. First operand 199 states. Second operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 23:49:50,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:50,677 INFO L93 Difference]: Finished difference Result 199 states and 209 transitions. [2022-02-20 23:49:50,677 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 209 transitions. [2022-02-20 23:49:50,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:50,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:50,677 INFO L74 IsIncluded]: Start isIncluded. First operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 199 states. [2022-02-20 23:49:50,677 INFO L87 Difference]: Start difference. First operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 199 states. [2022-02-20 23:49:50,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:50,679 INFO L93 Difference]: Finished difference Result 199 states and 209 transitions. [2022-02-20 23:49:50,680 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 209 transitions. [2022-02-20 23:49:50,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:50,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:50,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:50,684 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:50,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 145 states, 140 states have (on average 1.1) internal successors, (154), 144 states have internal predecessors, (154), 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 23:49:50,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 145 states to 145 states and 154 transitions. [2022-02-20 23:49:50,685 INFO L78 Accepts]: Start accepts. Automaton has 145 states and 154 transitions. Word has length 64 [2022-02-20 23:49:50,685 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:50,698 INFO L470 AbstractCegarLoop]: Abstraction has 145 states and 154 transitions. [2022-02-20 23:49:50,698 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 17 states have internal predecessors, (90), 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 23:49:50,698 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 154 transitions. [2022-02-20 23:49:50,698 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-02-20 23:49:50,698 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:50,698 INFO L514 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1] [2022-02-20 23:49:50,715 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-02-20 23:49:50,902 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:50,902 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:50,902 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:50,902 INFO L85 PathProgramCache]: Analyzing trace with hash -867962629, now seen corresponding path program 3 times [2022-02-20 23:49:50,903 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:50,903 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810511445] [2022-02-20 23:49:50,903 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:50,903 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:50,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:50,998 INFO L290 TraceCheckUtils]: 0: Hoare triple {8988#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8988#true} is VALID [2022-02-20 23:49:50,998 INFO L290 TraceCheckUtils]: 1: Hoare triple {8988#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:50,998 INFO L290 TraceCheckUtils]: 2: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:50,999 INFO L290 TraceCheckUtils]: 3: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:50,999 INFO L290 TraceCheckUtils]: 4: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:50,999 INFO L290 TraceCheckUtils]: 5: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,000 INFO L290 TraceCheckUtils]: 6: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,000 INFO L290 TraceCheckUtils]: 8: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,001 INFO L290 TraceCheckUtils]: 10: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,002 INFO L290 TraceCheckUtils]: 11: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,002 INFO L290 TraceCheckUtils]: 12: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,003 INFO L290 TraceCheckUtils]: 15: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,003 INFO L290 TraceCheckUtils]: 16: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,003 INFO L290 TraceCheckUtils]: 17: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:51,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {8990#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,004 INFO L290 TraceCheckUtils]: 20: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,004 INFO L290 TraceCheckUtils]: 21: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,005 INFO L290 TraceCheckUtils]: 22: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,005 INFO L290 TraceCheckUtils]: 23: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,005 INFO L290 TraceCheckUtils]: 24: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,006 INFO L290 TraceCheckUtils]: 25: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,006 INFO L290 TraceCheckUtils]: 26: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,006 INFO L290 TraceCheckUtils]: 27: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,006 INFO L290 TraceCheckUtils]: 28: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,007 INFO L290 TraceCheckUtils]: 29: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,007 INFO L290 TraceCheckUtils]: 30: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,007 INFO L290 TraceCheckUtils]: 31: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,008 INFO L290 TraceCheckUtils]: 32: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,008 INFO L290 TraceCheckUtils]: 33: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,008 INFO L290 TraceCheckUtils]: 34: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,008 INFO L290 TraceCheckUtils]: 35: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,009 INFO L290 TraceCheckUtils]: 36: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,009 INFO L290 TraceCheckUtils]: 37: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,009 INFO L290 TraceCheckUtils]: 38: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,009 INFO L290 TraceCheckUtils]: 39: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,010 INFO L290 TraceCheckUtils]: 40: Hoare triple {8991#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {8992#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:51,010 INFO L290 TraceCheckUtils]: 41: Hoare triple {8992#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:51,011 INFO L290 TraceCheckUtils]: 42: Hoare triple {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:51,011 INFO L290 TraceCheckUtils]: 43: Hoare triple {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:51,012 INFO L290 TraceCheckUtils]: 44: Hoare triple {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:51,012 INFO L290 TraceCheckUtils]: 45: Hoare triple {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:51,012 INFO L290 TraceCheckUtils]: 46: Hoare triple {8993#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,013 INFO L290 TraceCheckUtils]: 47: Hoare triple {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,013 INFO L290 TraceCheckUtils]: 48: Hoare triple {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,014 INFO L290 TraceCheckUtils]: 49: Hoare triple {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,014 INFO L290 TraceCheckUtils]: 50: Hoare triple {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,014 INFO L290 TraceCheckUtils]: 51: Hoare triple {8994#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,015 INFO L290 TraceCheckUtils]: 52: Hoare triple {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,015 INFO L290 TraceCheckUtils]: 53: Hoare triple {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,016 INFO L290 TraceCheckUtils]: 54: Hoare triple {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,016 INFO L290 TraceCheckUtils]: 55: Hoare triple {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 56: Hoare triple {8995#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {8996#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 57: Hoare triple {8996#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {8989#false} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 58: Hoare triple {8989#false} foo_#res#1 := foo_~i~0#1; {8989#false} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 59: Hoare triple {8989#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {8989#false} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 60: Hoare triple {8989#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {8989#false} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 61: Hoare triple {8989#false} havoc main_#t~ret3#1; {8989#false} is VALID [2022-02-20 23:49:51,017 INFO L290 TraceCheckUtils]: 62: Hoare triple {8989#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 63: Hoare triple {8989#false} assume !(main_~i~1#1 % 4294967296 < 32); {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 64: Hoare triple {8989#false} main_~i~1#1 := 0; {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 65: Hoare triple {8989#false} assume !!(main_~i~1#1 % 4294967296 < 32); {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 66: Hoare triple {8989#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 67: Hoare triple {8989#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 68: Hoare triple {8989#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 69: Hoare triple {8989#false} assume !!(main_~i~1#1 % 4294967296 < 32); {8989#false} is VALID [2022-02-20 23:49:51,018 INFO L290 TraceCheckUtils]: 70: Hoare triple {8989#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {8989#false} is VALID [2022-02-20 23:49:51,019 INFO L290 TraceCheckUtils]: 71: Hoare triple {8989#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {8989#false} is VALID [2022-02-20 23:49:51,019 INFO L290 TraceCheckUtils]: 72: Hoare triple {8989#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {8989#false} is VALID [2022-02-20 23:49:51,019 INFO L290 TraceCheckUtils]: 73: Hoare triple {8989#false} assume !!(main_~i~1#1 % 4294967296 < 32); {8989#false} is VALID [2022-02-20 23:49:51,019 INFO L290 TraceCheckUtils]: 74: Hoare triple {8989#false} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {8989#false} is VALID [2022-02-20 23:49:51,019 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 30 proven. 133 refuted. 0 times theorem prover too weak. 33 trivial. 0 not checked. [2022-02-20 23:49:51,019 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:51,020 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [810511445] [2022-02-20 23:49:51,020 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [810511445] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:51,020 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [327830120] [2022-02-20 23:49:51,020 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:49:51,020 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:51,020 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:51,027 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:51,028 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-02-20 23:49:51,089 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-02-20 23:49:51,090 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:51,090 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:49:51,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:51,104 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:51,122 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:51,123 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:49:51,139 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 10 treesize of output 8 [2022-02-20 23:49:51,610 INFO L290 TraceCheckUtils]: 0: Hoare triple {8988#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8988#true} is VALID [2022-02-20 23:49:51,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {8988#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,611 INFO L290 TraceCheckUtils]: 2: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,612 INFO L290 TraceCheckUtils]: 4: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,613 INFO L290 TraceCheckUtils]: 6: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,613 INFO L290 TraceCheckUtils]: 7: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,614 INFO L290 TraceCheckUtils]: 8: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,614 INFO L290 TraceCheckUtils]: 9: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,615 INFO L290 TraceCheckUtils]: 10: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,615 INFO L290 TraceCheckUtils]: 11: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,616 INFO L290 TraceCheckUtils]: 12: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,616 INFO L290 TraceCheckUtils]: 13: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,616 INFO L290 TraceCheckUtils]: 14: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,617 INFO L290 TraceCheckUtils]: 15: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,617 INFO L290 TraceCheckUtils]: 16: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,618 INFO L290 TraceCheckUtils]: 17: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,618 INFO L290 TraceCheckUtils]: 18: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,618 INFO L290 TraceCheckUtils]: 19: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,619 INFO L290 TraceCheckUtils]: 20: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,619 INFO L290 TraceCheckUtils]: 21: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,620 INFO L290 TraceCheckUtils]: 22: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,620 INFO L290 TraceCheckUtils]: 23: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,621 INFO L290 TraceCheckUtils]: 24: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,621 INFO L290 TraceCheckUtils]: 25: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,621 INFO L290 TraceCheckUtils]: 26: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,622 INFO L290 TraceCheckUtils]: 27: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,622 INFO L290 TraceCheckUtils]: 28: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,623 INFO L290 TraceCheckUtils]: 29: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,623 INFO L290 TraceCheckUtils]: 30: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,623 INFO L290 TraceCheckUtils]: 31: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,624 INFO L290 TraceCheckUtils]: 32: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,624 INFO L290 TraceCheckUtils]: 33: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,625 INFO L290 TraceCheckUtils]: 34: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,625 INFO L290 TraceCheckUtils]: 35: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,625 INFO L290 TraceCheckUtils]: 36: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,626 INFO L290 TraceCheckUtils]: 37: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,626 INFO L290 TraceCheckUtils]: 38: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,627 INFO L290 TraceCheckUtils]: 39: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,627 INFO L290 TraceCheckUtils]: 40: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,627 INFO L290 TraceCheckUtils]: 41: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,628 INFO L290 TraceCheckUtils]: 42: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,628 INFO L290 TraceCheckUtils]: 43: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,629 INFO L290 TraceCheckUtils]: 44: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,629 INFO L290 TraceCheckUtils]: 45: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,630 INFO L290 TraceCheckUtils]: 46: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,630 INFO L290 TraceCheckUtils]: 47: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,631 INFO L290 TraceCheckUtils]: 48: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,631 INFO L290 TraceCheckUtils]: 49: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,632 INFO L290 TraceCheckUtils]: 50: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,632 INFO L290 TraceCheckUtils]: 51: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,632 INFO L290 TraceCheckUtils]: 52: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,633 INFO L290 TraceCheckUtils]: 53: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,633 INFO L290 TraceCheckUtils]: 54: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,634 INFO L290 TraceCheckUtils]: 55: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,634 INFO L290 TraceCheckUtils]: 56: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,635 INFO L290 TraceCheckUtils]: 57: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,635 INFO L290 TraceCheckUtils]: 58: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,635 INFO L290 TraceCheckUtils]: 59: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,636 INFO L290 TraceCheckUtils]: 60: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,636 INFO L290 TraceCheckUtils]: 61: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} havoc main_#t~ret3#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,637 INFO L290 TraceCheckUtils]: 62: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,637 INFO L290 TraceCheckUtils]: 63: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(main_~i~1#1 % 4294967296 < 32); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,638 INFO L290 TraceCheckUtils]: 64: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_~i~1#1 := 0; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,638 INFO L290 TraceCheckUtils]: 65: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,639 INFO L290 TraceCheckUtils]: 66: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,639 INFO L290 TraceCheckUtils]: 67: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,640 INFO L290 TraceCheckUtils]: 68: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,640 INFO L290 TraceCheckUtils]: 69: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32); {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,641 INFO L290 TraceCheckUtils]: 70: Hoare triple {9003#(and (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9211#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,641 INFO L290 TraceCheckUtils]: 71: Hoare triple {9211#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9211#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} is VALID [2022-02-20 23:49:51,642 INFO L290 TraceCheckUtils]: 72: Hoare triple {9211#(and (<= 0 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4) 4) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9218#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4)) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 4 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} is VALID [2022-02-20 23:49:51,642 INFO L290 TraceCheckUtils]: 73: Hoare triple {9218#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4)) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 4 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))))} assume !!(main_~i~1#1 % 4294967296 < 32); {9222#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4)) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 4 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (< (mod |ULTIMATE.start_main_~i~1#1| 4294967296) 32))} is VALID [2022-02-20 23:49:51,643 INFO L290 TraceCheckUtils]: 74: Hoare triple {9222#(and (<= (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4)) (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (= |ULTIMATE.start_main_~#b~0#1.offset| 0) (= 128 (select |#length| |ULTIMATE.start_main_~#b~0#1.base|)) (<= 4 (+ |ULTIMATE.start_main_~#b~0#1.offset| (* |ULTIMATE.start_main_~i~1#1| 4))) (< (mod |ULTIMATE.start_main_~i~1#1| 4294967296) 32))} assume !(4 + (main_~#b~0#1.offset + 4 * main_~i~1#1) <= #length[main_~#b~0#1.base] && 0 <= main_~#b~0#1.offset + 4 * main_~i~1#1); {8989#false} is VALID [2022-02-20 23:49:51,643 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-02-20 23:49:51,644 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:51,644 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [327830120] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:51,644 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:49:51,644 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 13 [2022-02-20 23:49:51,644 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1021086879] [2022-02-20 23:49:51,644 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:51,645 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 75 [2022-02-20 23:49:51,645 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:51,645 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 23:49:51,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:51,665 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:51,665 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:51,665 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:51,666 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:49:51,666 INFO L87 Difference]: Start difference. First operand 145 states and 154 transitions. Second operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 23:49:51,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:51,774 INFO L93 Difference]: Finished difference Result 143 states and 152 transitions. [2022-02-20 23:49:51,790 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:49:51,790 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 75 [2022-02-20 23:49:51,790 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:51,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 23:49:51,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-02-20 23:49:51,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 23:49:51,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-02-20 23:49:51,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-02-20 23:49:51,832 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:51,834 INFO L225 Difference]: With dead ends: 143 [2022-02-20 23:49:51,834 INFO L226 Difference]: Without dead ends: 143 [2022-02-20 23:49:51,834 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 72 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:49:51,835 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 32 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:51,836 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 39 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:51,841 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-02-20 23:49:51,843 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 111. [2022-02-20 23:49:51,843 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:51,843 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 23:49:51,844 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 23:49:51,844 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 23:49:51,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:51,846 INFO L93 Difference]: Finished difference Result 143 states and 152 transitions. [2022-02-20 23:49:51,846 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 152 transitions. [2022-02-20 23:49:51,847 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:51,847 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:51,847 INFO L74 IsIncluded]: Start isIncluded. First operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 143 states. [2022-02-20 23:49:51,847 INFO L87 Difference]: Start difference. First operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 143 states. [2022-02-20 23:49:51,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:51,849 INFO L93 Difference]: Finished difference Result 143 states and 152 transitions. [2022-02-20 23:49:51,849 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 152 transitions. [2022-02-20 23:49:51,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:51,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:51,850 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:51,850 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:51,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 111 states, 108 states have (on average 1.0648148148148149) internal successors, (115), 110 states have internal predecessors, (115), 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 23:49:51,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 115 transitions. [2022-02-20 23:49:51,854 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 115 transitions. Word has length 75 [2022-02-20 23:49:51,854 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:51,854 INFO L470 AbstractCegarLoop]: Abstraction has 111 states and 115 transitions. [2022-02-20 23:49:51,855 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 6 states have internal predecessors, (25), 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 23:49:51,855 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 115 transitions. [2022-02-20 23:49:51,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-02-20 23:49:51,855 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:51,855 INFO L514 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:51,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:52,079 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:52,080 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:52,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:52,080 INFO L85 PathProgramCache]: Analyzing trace with hash -1660735401, now seen corresponding path program 1 times [2022-02-20 23:49:52,080 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:52,080 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1510329935] [2022-02-20 23:49:52,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:52,080 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:52,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:52,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {9765#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9765#true} is VALID [2022-02-20 23:49:52,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {9765#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,186 INFO L290 TraceCheckUtils]: 3: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,187 INFO L290 TraceCheckUtils]: 4: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,187 INFO L290 TraceCheckUtils]: 6: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,188 INFO L290 TraceCheckUtils]: 9: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,188 INFO L290 TraceCheckUtils]: 10: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,189 INFO L290 TraceCheckUtils]: 11: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,189 INFO L290 TraceCheckUtils]: 12: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,189 INFO L290 TraceCheckUtils]: 13: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,189 INFO L290 TraceCheckUtils]: 14: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,190 INFO L290 TraceCheckUtils]: 15: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,190 INFO L290 TraceCheckUtils]: 16: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,190 INFO L290 TraceCheckUtils]: 17: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:52,190 INFO L290 TraceCheckUtils]: 18: Hoare triple {9767#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,191 INFO L290 TraceCheckUtils]: 19: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,191 INFO L290 TraceCheckUtils]: 21: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,192 INFO L290 TraceCheckUtils]: 22: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,192 INFO L290 TraceCheckUtils]: 23: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,192 INFO L290 TraceCheckUtils]: 24: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,192 INFO L290 TraceCheckUtils]: 25: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,193 INFO L290 TraceCheckUtils]: 26: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,193 INFO L290 TraceCheckUtils]: 27: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,193 INFO L290 TraceCheckUtils]: 28: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,193 INFO L290 TraceCheckUtils]: 29: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,194 INFO L290 TraceCheckUtils]: 30: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,194 INFO L290 TraceCheckUtils]: 31: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,194 INFO L290 TraceCheckUtils]: 32: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,194 INFO L290 TraceCheckUtils]: 33: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,195 INFO L290 TraceCheckUtils]: 34: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,195 INFO L290 TraceCheckUtils]: 35: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,195 INFO L290 TraceCheckUtils]: 36: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,196 INFO L290 TraceCheckUtils]: 37: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,196 INFO L290 TraceCheckUtils]: 38: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,196 INFO L290 TraceCheckUtils]: 39: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,196 INFO L290 TraceCheckUtils]: 40: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,197 INFO L290 TraceCheckUtils]: 41: Hoare triple {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:52,197 INFO L290 TraceCheckUtils]: 42: Hoare triple {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:52,197 INFO L290 TraceCheckUtils]: 43: Hoare triple {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:52,198 INFO L290 TraceCheckUtils]: 44: Hoare triple {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:52,198 INFO L290 TraceCheckUtils]: 45: Hoare triple {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:52,198 INFO L290 TraceCheckUtils]: 46: Hoare triple {9770#(and (<= 2 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,199 INFO L290 TraceCheckUtils]: 47: Hoare triple {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,199 INFO L290 TraceCheckUtils]: 48: Hoare triple {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,199 INFO L290 TraceCheckUtils]: 49: Hoare triple {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,200 INFO L290 TraceCheckUtils]: 50: Hoare triple {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,200 INFO L290 TraceCheckUtils]: 51: Hoare triple {9771#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,201 INFO L290 TraceCheckUtils]: 52: Hoare triple {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,201 INFO L290 TraceCheckUtils]: 53: Hoare triple {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,201 INFO L290 TraceCheckUtils]: 54: Hoare triple {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,202 INFO L290 TraceCheckUtils]: 55: Hoare triple {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,202 INFO L290 TraceCheckUtils]: 56: Hoare triple {9772#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9773#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 57: Hoare triple {9773#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 58: Hoare triple {9766#false} foo_#res#1 := foo_~i~0#1; {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 59: Hoare triple {9766#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 60: Hoare triple {9766#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 61: Hoare triple {9766#false} havoc main_#t~ret3#1; {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 62: Hoare triple {9766#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 63: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 64: Hoare triple {9766#false} main_~i~1#1 := 0; {9766#false} is VALID [2022-02-20 23:49:52,203 INFO L290 TraceCheckUtils]: 65: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 66: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 67: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 68: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 69: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 70: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 71: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 72: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,204 INFO L290 TraceCheckUtils]: 73: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 74: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 75: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 76: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 77: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 78: Hoare triple {9766#false} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {9766#false} is VALID [2022-02-20 23:49:52,205 INFO L290 TraceCheckUtils]: 79: Hoare triple {9766#false} assume !(#valid == main_old_#valid#1); {9766#false} is VALID [2022-02-20 23:49:52,206 INFO L134 CoverageAnalysis]: Checked inductivity of 203 backedges. 30 proven. 133 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 23:49:52,206 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:52,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1510329935] [2022-02-20 23:49:52,206 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1510329935] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:52,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [852366229] [2022-02-20 23:49:52,206 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:52,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:52,206 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:52,207 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:52,208 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-02-20 23:49:52,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:52,292 INFO L263 TraceCheckSpWp]: Trace formula consists of 292 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:49:52,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:52,303 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:52,668 INFO L290 TraceCheckUtils]: 0: Hoare triple {9765#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9765#true} is VALID [2022-02-20 23:49:52,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {9765#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,669 INFO L290 TraceCheckUtils]: 3: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,669 INFO L290 TraceCheckUtils]: 4: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,670 INFO L290 TraceCheckUtils]: 5: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,670 INFO L290 TraceCheckUtils]: 6: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,670 INFO L290 TraceCheckUtils]: 7: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,670 INFO L290 TraceCheckUtils]: 8: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,671 INFO L290 TraceCheckUtils]: 9: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,671 INFO L290 TraceCheckUtils]: 10: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,671 INFO L290 TraceCheckUtils]: 11: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,672 INFO L290 TraceCheckUtils]: 12: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,672 INFO L290 TraceCheckUtils]: 14: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,672 INFO L290 TraceCheckUtils]: 15: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,673 INFO L290 TraceCheckUtils]: 16: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,673 INFO L290 TraceCheckUtils]: 17: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,673 INFO L290 TraceCheckUtils]: 18: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,674 INFO L290 TraceCheckUtils]: 19: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,674 INFO L290 TraceCheckUtils]: 20: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,674 INFO L290 TraceCheckUtils]: 21: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,675 INFO L290 TraceCheckUtils]: 22: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,675 INFO L290 TraceCheckUtils]: 23: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,675 INFO L290 TraceCheckUtils]: 24: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,676 INFO L290 TraceCheckUtils]: 26: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,677 INFO L290 TraceCheckUtils]: 29: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,677 INFO L290 TraceCheckUtils]: 30: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,677 INFO L290 TraceCheckUtils]: 31: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,677 INFO L290 TraceCheckUtils]: 32: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,678 INFO L290 TraceCheckUtils]: 33: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,678 INFO L290 TraceCheckUtils]: 34: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,678 INFO L290 TraceCheckUtils]: 35: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,678 INFO L290 TraceCheckUtils]: 36: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,679 INFO L290 TraceCheckUtils]: 37: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,679 INFO L290 TraceCheckUtils]: 38: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,679 INFO L290 TraceCheckUtils]: 39: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,680 INFO L290 TraceCheckUtils]: 40: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,680 INFO L290 TraceCheckUtils]: 41: Hoare triple {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,681 INFO L290 TraceCheckUtils]: 42: Hoare triple {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,681 INFO L290 TraceCheckUtils]: 43: Hoare triple {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,681 INFO L290 TraceCheckUtils]: 44: Hoare triple {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,682 INFO L290 TraceCheckUtils]: 45: Hoare triple {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,682 INFO L290 TraceCheckUtils]: 46: Hoare triple {9901#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 2 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,682 INFO L290 TraceCheckUtils]: 47: Hoare triple {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,683 INFO L290 TraceCheckUtils]: 48: Hoare triple {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,683 INFO L290 TraceCheckUtils]: 49: Hoare triple {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,684 INFO L290 TraceCheckUtils]: 50: Hoare triple {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:49:52,684 INFO L290 TraceCheckUtils]: 51: Hoare triple {9917#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 2 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:52,684 INFO L290 TraceCheckUtils]: 52: Hoare triple {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:52,685 INFO L290 TraceCheckUtils]: 53: Hoare triple {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:52,685 INFO L290 TraceCheckUtils]: 54: Hoare triple {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:52,685 INFO L290 TraceCheckUtils]: 55: Hoare triple {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:52,686 INFO L290 TraceCheckUtils]: 56: Hoare triple {9933#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9949#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:52,686 INFO L290 TraceCheckUtils]: 57: Hoare triple {9949#(and (<= 2 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9766#false} is VALID [2022-02-20 23:49:52,686 INFO L290 TraceCheckUtils]: 58: Hoare triple {9766#false} foo_#res#1 := foo_~i~0#1; {9766#false} is VALID [2022-02-20 23:49:52,686 INFO L290 TraceCheckUtils]: 59: Hoare triple {9766#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 60: Hoare triple {9766#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 61: Hoare triple {9766#false} havoc main_#t~ret3#1; {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 62: Hoare triple {9766#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 63: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 64: Hoare triple {9766#false} main_~i~1#1 := 0; {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 65: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 66: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,687 INFO L290 TraceCheckUtils]: 67: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 68: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 69: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 70: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 71: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 72: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 73: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 74: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 75: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,688 INFO L290 TraceCheckUtils]: 76: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,689 INFO L290 TraceCheckUtils]: 77: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,689 INFO L290 TraceCheckUtils]: 78: Hoare triple {9766#false} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {9766#false} is VALID [2022-02-20 23:49:52,689 INFO L290 TraceCheckUtils]: 79: Hoare triple {9766#false} assume !(#valid == main_old_#valid#1); {9766#false} is VALID [2022-02-20 23:49:52,689 INFO L134 CoverageAnalysis]: Checked inductivity of 203 backedges. 57 proven. 106 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 23:49:52,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:52,969 INFO L290 TraceCheckUtils]: 79: Hoare triple {9766#false} assume !(#valid == main_old_#valid#1); {9766#false} is VALID [2022-02-20 23:49:52,969 INFO L290 TraceCheckUtils]: 78: Hoare triple {9766#false} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {9766#false} is VALID [2022-02-20 23:49:52,969 INFO L290 TraceCheckUtils]: 77: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 76: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 75: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 74: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 73: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 72: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 71: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 70: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 69: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,970 INFO L290 TraceCheckUtils]: 68: Hoare triple {9766#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 67: Hoare triple {9766#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 66: Hoare triple {9766#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 65: Hoare triple {9766#false} assume !!(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 64: Hoare triple {9766#false} main_~i~1#1 := 0; {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 63: Hoare triple {9766#false} assume !(main_~i~1#1 % 4294967296 < 32); {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 62: Hoare triple {9766#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 61: Hoare triple {9766#false} havoc main_#t~ret3#1; {9766#false} is VALID [2022-02-20 23:49:52,971 INFO L290 TraceCheckUtils]: 60: Hoare triple {9766#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9766#false} is VALID [2022-02-20 23:49:52,972 INFO L290 TraceCheckUtils]: 59: Hoare triple {9766#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9766#false} is VALID [2022-02-20 23:49:52,972 INFO L290 TraceCheckUtils]: 58: Hoare triple {9766#false} foo_#res#1 := foo_~i~0#1; {9766#false} is VALID [2022-02-20 23:49:52,972 INFO L290 TraceCheckUtils]: 57: Hoare triple {10085#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9766#false} is VALID [2022-02-20 23:49:52,972 INFO L290 TraceCheckUtils]: 56: Hoare triple {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10085#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:49:52,973 INFO L290 TraceCheckUtils]: 55: Hoare triple {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,973 INFO L290 TraceCheckUtils]: 54: Hoare triple {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,973 INFO L290 TraceCheckUtils]: 53: Hoare triple {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,974 INFO L290 TraceCheckUtils]: 52: Hoare triple {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,974 INFO L290 TraceCheckUtils]: 51: Hoare triple {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10089#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,974 INFO L290 TraceCheckUtils]: 50: Hoare triple {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,975 INFO L290 TraceCheckUtils]: 49: Hoare triple {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,975 INFO L290 TraceCheckUtils]: 48: Hoare triple {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,975 INFO L290 TraceCheckUtils]: 47: Hoare triple {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,976 INFO L290 TraceCheckUtils]: 46: Hoare triple {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10105#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,987 INFO L290 TraceCheckUtils]: 45: Hoare triple {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,988 INFO L290 TraceCheckUtils]: 44: Hoare triple {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,988 INFO L290 TraceCheckUtils]: 43: Hoare triple {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,988 INFO L290 TraceCheckUtils]: 42: Hoare triple {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,989 INFO L290 TraceCheckUtils]: 41: Hoare triple {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10121#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:49:52,989 INFO L290 TraceCheckUtils]: 40: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9769#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,989 INFO L290 TraceCheckUtils]: 39: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,990 INFO L290 TraceCheckUtils]: 37: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,990 INFO L290 TraceCheckUtils]: 36: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,990 INFO L290 TraceCheckUtils]: 35: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,990 INFO L290 TraceCheckUtils]: 34: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,991 INFO L290 TraceCheckUtils]: 33: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,991 INFO L290 TraceCheckUtils]: 32: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,991 INFO L290 TraceCheckUtils]: 31: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,991 INFO L290 TraceCheckUtils]: 30: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,992 INFO L290 TraceCheckUtils]: 29: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,992 INFO L290 TraceCheckUtils]: 28: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,992 INFO L290 TraceCheckUtils]: 27: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,992 INFO L290 TraceCheckUtils]: 26: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,993 INFO L290 TraceCheckUtils]: 25: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,993 INFO L290 TraceCheckUtils]: 23: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,993 INFO L290 TraceCheckUtils]: 22: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,994 INFO L290 TraceCheckUtils]: 20: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,994 INFO L290 TraceCheckUtils]: 19: Hoare triple {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,994 INFO L290 TraceCheckUtils]: 18: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {9768#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,995 INFO L290 TraceCheckUtils]: 17: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,995 INFO L290 TraceCheckUtils]: 16: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,995 INFO L290 TraceCheckUtils]: 15: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,995 INFO L290 TraceCheckUtils]: 14: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,995 INFO L290 TraceCheckUtils]: 13: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,996 INFO L290 TraceCheckUtils]: 12: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,996 INFO L290 TraceCheckUtils]: 11: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,996 INFO L290 TraceCheckUtils]: 10: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,996 INFO L290 TraceCheckUtils]: 9: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,997 INFO L290 TraceCheckUtils]: 8: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,997 INFO L290 TraceCheckUtils]: 6: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,998 INFO L290 TraceCheckUtils]: 4: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,998 INFO L290 TraceCheckUtils]: 3: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,998 INFO L290 TraceCheckUtils]: 2: Hoare triple {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {9765#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {9780#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:49:52,999 INFO L290 TraceCheckUtils]: 0: Hoare triple {9765#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9765#true} is VALID [2022-02-20 23:49:52,999 INFO L134 CoverageAnalysis]: Checked inductivity of 203 backedges. 57 proven. 106 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-02-20 23:49:52,999 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [852366229] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:53,000 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:53,000 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 18 [2022-02-20 23:49:53,000 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1737775538] [2022-02-20 23:49:53,000 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:53,010 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 80 [2022-02-20 23:49:53,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:53,011 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 23:49:53,093 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:53,093 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:49:53,093 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:53,094 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:49:53,094 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:49:53,094 INFO L87 Difference]: Start difference. First operand 111 states and 115 transitions. Second operand has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 23:49:53,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:53,668 INFO L93 Difference]: Finished difference Result 113 states and 115 transitions. [2022-02-20 23:49:53,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:49:53,668 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 80 [2022-02-20 23:49:53,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:53,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 23:49:53,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 93 transitions. [2022-02-20 23:49:53,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 23:49:53,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 93 transitions. [2022-02-20 23:49:53,670 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 93 transitions. [2022-02-20 23:49:53,734 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:53,735 INFO L225 Difference]: With dead ends: 113 [2022-02-20 23:49:53,735 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:49:53,736 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 176 GetRequests, 151 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=182, Invalid=520, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:49:53,736 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 91 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 305 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 327 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 305 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:53,736 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 79 Invalid, 327 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 305 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:49:53,737 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:49:53,738 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 111. [2022-02-20 23:49:53,738 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:53,738 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 23:49:53,738 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 23:49:53,738 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 23:49:53,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:53,739 INFO L93 Difference]: Finished difference Result 113 states and 115 transitions. [2022-02-20 23:49:53,739 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 115 transitions. [2022-02-20 23:49:53,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:53,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:53,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 113 states. [2022-02-20 23:49:53,740 INFO L87 Difference]: Start difference. First operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 113 states. [2022-02-20 23:49:53,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:53,741 INFO L93 Difference]: Finished difference Result 113 states and 115 transitions. [2022-02-20 23:49:53,741 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 115 transitions. [2022-02-20 23:49:53,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:53,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:53,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:53,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:53,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 111 states, 108 states have (on average 1.0462962962962963) internal successors, (113), 110 states have internal predecessors, (113), 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 23:49:53,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 113 transitions. [2022-02-20 23:49:53,743 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 113 transitions. Word has length 80 [2022-02-20 23:49:53,743 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:53,743 INFO L470 AbstractCegarLoop]: Abstraction has 111 states and 113 transitions. [2022-02-20 23:49:53,743 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 23:49:53,743 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 113 transitions. [2022-02-20 23:49:53,743 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-02-20 23:49:53,744 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:53,744 INFO L514 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 9, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:53,761 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:53,955 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-02-20 23:49:53,955 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:53,956 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:53,956 INFO L85 PathProgramCache]: Analyzing trace with hash 283151040, now seen corresponding path program 2 times [2022-02-20 23:49:53,956 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:53,956 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [496630053] [2022-02-20 23:49:53,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:53,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:53,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:54,033 INFO L290 TraceCheckUtils]: 0: Hoare triple {10727#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10727#true} is VALID [2022-02-20 23:49:54,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {10727#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,034 INFO L290 TraceCheckUtils]: 3: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,034 INFO L290 TraceCheckUtils]: 4: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,035 INFO L290 TraceCheckUtils]: 6: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,035 INFO L290 TraceCheckUtils]: 8: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,035 INFO L290 TraceCheckUtils]: 9: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,036 INFO L290 TraceCheckUtils]: 10: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,036 INFO L290 TraceCheckUtils]: 11: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,037 INFO L290 TraceCheckUtils]: 14: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,038 INFO L290 TraceCheckUtils]: 17: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:49:54,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {10729#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,038 INFO L290 TraceCheckUtils]: 19: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,039 INFO L290 TraceCheckUtils]: 22: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,040 INFO L290 TraceCheckUtils]: 23: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,040 INFO L290 TraceCheckUtils]: 25: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,041 INFO L290 TraceCheckUtils]: 26: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,041 INFO L290 TraceCheckUtils]: 27: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,042 INFO L290 TraceCheckUtils]: 30: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,043 INFO L290 TraceCheckUtils]: 31: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,043 INFO L290 TraceCheckUtils]: 32: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,043 INFO L290 TraceCheckUtils]: 33: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,044 INFO L290 TraceCheckUtils]: 34: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,044 INFO L290 TraceCheckUtils]: 35: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,044 INFO L290 TraceCheckUtils]: 36: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#res#1 := foo_~i~0#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,045 INFO L290 TraceCheckUtils]: 37: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,045 INFO L290 TraceCheckUtils]: 38: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,045 INFO L290 TraceCheckUtils]: 39: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} havoc main_#t~ret3#1; {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,046 INFO L290 TraceCheckUtils]: 40: Hoare triple {10730#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,046 INFO L290 TraceCheckUtils]: 41: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,047 INFO L290 TraceCheckUtils]: 42: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,047 INFO L290 TraceCheckUtils]: 43: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,050 INFO L290 TraceCheckUtils]: 44: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,051 INFO L290 TraceCheckUtils]: 45: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,051 INFO L290 TraceCheckUtils]: 46: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,051 INFO L290 TraceCheckUtils]: 47: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,052 INFO L290 TraceCheckUtils]: 48: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,052 INFO L290 TraceCheckUtils]: 49: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,052 INFO L290 TraceCheckUtils]: 50: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,053 INFO L290 TraceCheckUtils]: 51: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,053 INFO L290 TraceCheckUtils]: 52: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,053 INFO L290 TraceCheckUtils]: 53: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,054 INFO L290 TraceCheckUtils]: 54: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,063 INFO L290 TraceCheckUtils]: 55: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,063 INFO L290 TraceCheckUtils]: 56: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,064 INFO L290 TraceCheckUtils]: 57: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,064 INFO L290 TraceCheckUtils]: 58: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,065 INFO L290 TraceCheckUtils]: 59: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,065 INFO L290 TraceCheckUtils]: 60: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,065 INFO L290 TraceCheckUtils]: 61: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,066 INFO L290 TraceCheckUtils]: 62: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} foo_#res#1 := foo_~i~0#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,066 INFO L290 TraceCheckUtils]: 64: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,067 INFO L290 TraceCheckUtils]: 65: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,067 INFO L290 TraceCheckUtils]: 66: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} havoc main_#t~ret3#1; {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:49:54,068 INFO L290 TraceCheckUtils]: 67: Hoare triple {10731#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10732#(and (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)) (<= |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:49:54,068 INFO L290 TraceCheckUtils]: 68: Hoare triple {10732#(and (not (<= (+ (div |ULTIMATE.start_main_~i~1#1| 4294967296) 1) 0)) (<= |ULTIMATE.start_main_~i~1#1| 3))} assume !(main_~i~1#1 % 4294967296 < 32); {10728#false} is VALID [2022-02-20 23:49:54,068 INFO L290 TraceCheckUtils]: 69: Hoare triple {10728#false} main_~i~1#1 := 0; {10728#false} is VALID [2022-02-20 23:49:54,068 INFO L290 TraceCheckUtils]: 70: Hoare triple {10728#false} assume !!(main_~i~1#1 % 4294967296 < 32); {10728#false} is VALID [2022-02-20 23:49:54,068 INFO L290 TraceCheckUtils]: 71: Hoare triple {10728#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 72: Hoare triple {10728#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 73: Hoare triple {10728#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 74: Hoare triple {10728#false} assume !!(main_~i~1#1 % 4294967296 < 32); {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 75: Hoare triple {10728#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 76: Hoare triple {10728#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 77: Hoare triple {10728#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 78: Hoare triple {10728#false} assume !!(main_~i~1#1 % 4294967296 < 32); {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 79: Hoare triple {10728#false} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10728#false} is VALID [2022-02-20 23:49:54,069 INFO L290 TraceCheckUtils]: 80: Hoare triple {10728#false} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10728#false} is VALID [2022-02-20 23:49:54,070 INFO L290 TraceCheckUtils]: 81: Hoare triple {10728#false} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10728#false} is VALID [2022-02-20 23:49:54,070 INFO L290 TraceCheckUtils]: 82: Hoare triple {10728#false} assume !(main_~i~1#1 % 4294967296 < 32); {10728#false} is VALID [2022-02-20 23:49:54,070 INFO L290 TraceCheckUtils]: 83: Hoare triple {10728#false} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {10728#false} is VALID [2022-02-20 23:49:54,070 INFO L290 TraceCheckUtils]: 84: Hoare triple {10728#false} assume !(#valid == main_old_#valid#1); {10728#false} is VALID [2022-02-20 23:49:54,070 INFO L134 CoverageAnalysis]: Checked inductivity of 246 backedges. 0 proven. 172 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-02-20 23:49:54,070 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:54,070 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [496630053] [2022-02-20 23:49:54,071 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [496630053] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:54,071 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1999860680] [2022-02-20 23:49:54,071 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:49:54,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:54,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:54,072 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:54,074 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-02-20 23:49:54,136 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 23:49:54,136 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:54,137 INFO L263 TraceCheckSpWp]: Trace formula consists of 48 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:49:54,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:54,149 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:55,636 INFO L290 TraceCheckUtils]: 0: Hoare triple {10727#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10727#true} is VALID [2022-02-20 23:49:55,638 INFO L290 TraceCheckUtils]: 1: Hoare triple {10727#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,638 INFO L290 TraceCheckUtils]: 2: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,639 INFO L290 TraceCheckUtils]: 3: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,639 INFO L290 TraceCheckUtils]: 4: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,640 INFO L290 TraceCheckUtils]: 5: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,640 INFO L290 TraceCheckUtils]: 6: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,641 INFO L290 TraceCheckUtils]: 7: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,641 INFO L290 TraceCheckUtils]: 8: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,642 INFO L290 TraceCheckUtils]: 9: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,642 INFO L290 TraceCheckUtils]: 10: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,643 INFO L290 TraceCheckUtils]: 11: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,643 INFO L290 TraceCheckUtils]: 12: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,644 INFO L290 TraceCheckUtils]: 13: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,644 INFO L290 TraceCheckUtils]: 14: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#res#1 := foo_~i~0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,645 INFO L290 TraceCheckUtils]: 15: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,645 INFO L290 TraceCheckUtils]: 16: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,646 INFO L290 TraceCheckUtils]: 17: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} havoc main_#t~ret3#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,646 INFO L290 TraceCheckUtils]: 18: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,647 INFO L290 TraceCheckUtils]: 19: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,647 INFO L290 TraceCheckUtils]: 20: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,648 INFO L290 TraceCheckUtils]: 21: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,650 INFO L290 TraceCheckUtils]: 25: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,650 INFO L290 TraceCheckUtils]: 26: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,651 INFO L290 TraceCheckUtils]: 27: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,652 INFO L290 TraceCheckUtils]: 29: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,652 INFO L290 TraceCheckUtils]: 30: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,653 INFO L290 TraceCheckUtils]: 31: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,653 INFO L290 TraceCheckUtils]: 32: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,654 INFO L290 TraceCheckUtils]: 33: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,654 INFO L290 TraceCheckUtils]: 34: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,655 INFO L290 TraceCheckUtils]: 35: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,655 INFO L290 TraceCheckUtils]: 36: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#res#1 := foo_~i~0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,656 INFO L290 TraceCheckUtils]: 37: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,656 INFO L290 TraceCheckUtils]: 38: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,657 INFO L290 TraceCheckUtils]: 39: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} havoc main_#t~ret3#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,657 INFO L290 TraceCheckUtils]: 40: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,658 INFO L290 TraceCheckUtils]: 41: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,658 INFO L290 TraceCheckUtils]: 42: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,659 INFO L290 TraceCheckUtils]: 43: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,659 INFO L290 TraceCheckUtils]: 44: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,660 INFO L290 TraceCheckUtils]: 45: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,660 INFO L290 TraceCheckUtils]: 46: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,661 INFO L290 TraceCheckUtils]: 47: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,661 INFO L290 TraceCheckUtils]: 48: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,662 INFO L290 TraceCheckUtils]: 49: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,662 INFO L290 TraceCheckUtils]: 50: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,663 INFO L290 TraceCheckUtils]: 51: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,663 INFO L290 TraceCheckUtils]: 52: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,664 INFO L290 TraceCheckUtils]: 53: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,664 INFO L290 TraceCheckUtils]: 54: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,665 INFO L290 TraceCheckUtils]: 55: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,665 INFO L290 TraceCheckUtils]: 56: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,665 INFO L290 TraceCheckUtils]: 57: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,666 INFO L290 TraceCheckUtils]: 58: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,666 INFO L290 TraceCheckUtils]: 59: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,667 INFO L290 TraceCheckUtils]: 60: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,667 INFO L290 TraceCheckUtils]: 61: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,668 INFO L290 TraceCheckUtils]: 62: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,668 INFO L290 TraceCheckUtils]: 63: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} foo_#res#1 := foo_~i~0#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,669 INFO L290 TraceCheckUtils]: 64: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,669 INFO L290 TraceCheckUtils]: 65: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,670 INFO L290 TraceCheckUtils]: 66: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} havoc main_#t~ret3#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,670 INFO L290 TraceCheckUtils]: 67: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,671 INFO L290 TraceCheckUtils]: 68: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(main_~i~1#1 % 4294967296 < 32); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,671 INFO L290 TraceCheckUtils]: 69: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_~i~1#1 := 0; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,672 INFO L290 TraceCheckUtils]: 70: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,673 INFO L290 TraceCheckUtils]: 71: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,674 INFO L290 TraceCheckUtils]: 72: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,675 INFO L290 TraceCheckUtils]: 73: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,675 INFO L290 TraceCheckUtils]: 74: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,676 INFO L290 TraceCheckUtils]: 75: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,677 INFO L290 TraceCheckUtils]: 76: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,678 INFO L290 TraceCheckUtils]: 77: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,681 INFO L290 TraceCheckUtils]: 78: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !!(main_~i~1#1 % 4294967296 < 32); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,682 INFO L290 TraceCheckUtils]: 79: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} SUMMARY for call main_#t~mem5#1 := read~int(main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L30 {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,683 INFO L290 TraceCheckUtils]: 80: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(main_#t~mem5#1 != 1 + main_~i~1#1);havoc main_#t~mem5#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,684 INFO L290 TraceCheckUtils]: 81: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#t~post4#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post4#1;havoc main_#t~post4#1; {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,685 INFO L290 TraceCheckUtils]: 82: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} assume !(main_~i~1#1 % 4294967296 < 32); {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} is VALID [2022-02-20 23:49:55,686 INFO L290 TraceCheckUtils]: 83: Hoare triple {10739#(and (= (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base|) 0) (exists ((v_ArrVal_421 Int)) (= (select (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_421) |ULTIMATE.start_main_~#mask~0#1.base|) 0)) (exists ((v_ArrVal_420 Int) (v_ArrVal_419 Int)) (= |#valid| (store (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_~#b~0#1.base| v_ArrVal_420) |ULTIMATE.start_main_~#mask~0#1.base| v_ArrVal_419))))} main_#res#1 := 0;call ULTIMATE.dealloc(main_~#b~0#1.base, main_~#b~0#1.offset);havoc main_~#b~0#1.base, main_~#b~0#1.offset;call ULTIMATE.dealloc(main_~#mask~0#1.base, main_~#mask~0#1.offset);havoc main_~#mask~0#1.base, main_~#mask~0#1.offset; {10986#(exists ((v_ArrVal_421 Int) (|v_ULTIMATE.start_main_~#b~0#1.base_25| Int) (v_ArrVal_420 Int) (|v_ULTIMATE.start_main_~#mask~0#1.base_20| Int) (v_ArrVal_419 Int)) (and (= (store (store (store (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25| v_ArrVal_420) |v_ULTIMATE.start_main_~#mask~0#1.base_20| v_ArrVal_419) |v_ULTIMATE.start_main_~#b~0#1.base_25| 0) |v_ULTIMATE.start_main_~#mask~0#1.base_20| 0) |#valid|) (= (select (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25| v_ArrVal_421) |v_ULTIMATE.start_main_~#mask~0#1.base_20|) 0) (= (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25|) 0)))} is VALID [2022-02-20 23:49:55,687 INFO L290 TraceCheckUtils]: 84: Hoare triple {10986#(exists ((v_ArrVal_421 Int) (|v_ULTIMATE.start_main_~#b~0#1.base_25| Int) (v_ArrVal_420 Int) (|v_ULTIMATE.start_main_~#mask~0#1.base_20| Int) (v_ArrVal_419 Int)) (and (= (store (store (store (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25| v_ArrVal_420) |v_ULTIMATE.start_main_~#mask~0#1.base_20| v_ArrVal_419) |v_ULTIMATE.start_main_~#b~0#1.base_25| 0) |v_ULTIMATE.start_main_~#mask~0#1.base_20| 0) |#valid|) (= (select (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25| v_ArrVal_421) |v_ULTIMATE.start_main_~#mask~0#1.base_20|) 0) (= (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_~#b~0#1.base_25|) 0)))} assume !(#valid == main_old_#valid#1); {10728#false} is VALID [2022-02-20 23:49:55,687 INFO L134 CoverageAnalysis]: Checked inductivity of 246 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 246 trivial. 0 not checked. [2022-02-20 23:49:55,687 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:55,688 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1999860680] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:55,688 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:49:55,688 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [6] total 8 [2022-02-20 23:49:55,688 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [749307963] [2022-02-20 23:49:55,688 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:55,689 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 85 [2022-02-20 23:49:55,689 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:55,689 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 23:49:55,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:55,710 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:55,710 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:55,710 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:55,710 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:49:55,711 INFO L87 Difference]: Start difference. First operand 111 states and 113 transitions. Second operand has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 23:49:55,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:55,738 INFO L93 Difference]: Finished difference Result 110 states and 112 transitions. [2022-02-20 23:49:55,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:49:55,738 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 85 [2022-02-20 23:49:55,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:55,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 23:49:55,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 25 transitions. [2022-02-20 23:49:55,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 23:49:55,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 25 transitions. [2022-02-20 23:49:55,739 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 25 transitions. [2022-02-20 23:49:55,762 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:55,763 INFO L225 Difference]: With dead ends: 110 [2022-02-20 23:49:55,763 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 23:49:55,763 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 84 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:49:55,763 INFO L933 BasicCegarLoop]: 19 mSDtfsCounter, 2 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 8 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:55,764 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 36 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 8 Unchecked, 0.0s Time] [2022-02-20 23:49:55,764 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 23:49:55,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 94. [2022-02-20 23:49:55,765 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:55,765 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 23:49:55,765 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 23:49:55,765 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 23:49:55,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:55,766 INFO L93 Difference]: Finished difference Result 94 states and 95 transitions. [2022-02-20 23:49:55,766 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 95 transitions. [2022-02-20 23:49:55,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:55,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:55,766 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 94 states. [2022-02-20 23:49:55,766 INFO L87 Difference]: Start difference. First operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 94 states. [2022-02-20 23:49:55,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:55,767 INFO L93 Difference]: Finished difference Result 94 states and 95 transitions. [2022-02-20 23:49:55,767 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 95 transitions. [2022-02-20 23:49:55,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:55,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:55,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:55,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:55,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 93 states have internal predecessors, (95), 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 23:49:55,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 95 transitions. [2022-02-20 23:49:55,769 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 95 transitions. Word has length 85 [2022-02-20 23:49:55,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:55,769 INFO L470 AbstractCegarLoop]: Abstraction has 94 states and 95 transitions. [2022-02-20 23:49:55,769 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.666666666666667) internal successors, (23), 4 states have internal predecessors, (23), 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 23:49:55,769 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 95 transitions. [2022-02-20 23:49:55,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 23:49:55,769 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:55,770 INFO L514 BasicCegarLoop]: trace histogram [14, 13, 13, 13, 13, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1] [2022-02-20 23:49:55,799 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:55,975 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:55,975 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:55,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:55,976 INFO L85 PathProgramCache]: Analyzing trace with hash -875547996, now seen corresponding path program 3 times [2022-02-20 23:49:55,976 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:55,976 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1632083610] [2022-02-20 23:49:55,976 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:55,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:56,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 0: Hoare triple {11381#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11381#true} is VALID [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 1: Hoare triple {11381#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {11381#true} is VALID [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {11381#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11381#true} is VALID [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 3: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 4: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,058 INFO L290 TraceCheckUtils]: 5: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 6: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 8: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 9: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 10: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 11: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {11381#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,059 INFO L290 TraceCheckUtils]: 14: Hoare triple {11381#true} foo_#res#1 := foo_~i~0#1; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 15: Hoare triple {11381#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 16: Hoare triple {11381#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 17: Hoare triple {11381#true} havoc main_#t~ret3#1; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {11381#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 19: Hoare triple {11381#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 21: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 22: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,060 INFO L290 TraceCheckUtils]: 23: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 25: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 26: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 29: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 30: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 31: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,061 INFO L290 TraceCheckUtils]: 32: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 33: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 35: Hoare triple {11381#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 36: Hoare triple {11381#true} foo_#res#1 := foo_~i~0#1; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 37: Hoare triple {11381#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 38: Hoare triple {11381#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 39: Hoare triple {11381#true} havoc main_#t~ret3#1; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 40: Hoare triple {11381#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11381#true} is VALID [2022-02-20 23:49:56,062 INFO L290 TraceCheckUtils]: 41: Hoare triple {11381#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 42: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 43: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 44: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 45: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 46: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 47: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 48: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 49: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,063 INFO L290 TraceCheckUtils]: 50: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 51: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 52: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 53: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 54: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 55: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 56: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 57: Hoare triple {11381#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 58: Hoare triple {11381#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11381#true} is VALID [2022-02-20 23:49:56,064 INFO L290 TraceCheckUtils]: 59: Hoare triple {11381#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 60: Hoare triple {11381#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 61: Hoare triple {11381#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 62: Hoare triple {11381#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 63: Hoare triple {11381#true} foo_#res#1 := foo_~i~0#1; {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 64: Hoare triple {11381#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 65: Hoare triple {11381#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 66: Hoare triple {11381#true} havoc main_#t~ret3#1; {11381#true} is VALID [2022-02-20 23:49:56,065 INFO L290 TraceCheckUtils]: 67: Hoare triple {11381#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11381#true} is VALID [2022-02-20 23:49:56,066 INFO L290 TraceCheckUtils]: 68: Hoare triple {11381#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:56,066 INFO L290 TraceCheckUtils]: 69: Hoare triple {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:56,066 INFO L290 TraceCheckUtils]: 70: Hoare triple {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:56,067 INFO L290 TraceCheckUtils]: 71: Hoare triple {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:56,067 INFO L290 TraceCheckUtils]: 72: Hoare triple {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} is VALID [2022-02-20 23:49:56,067 INFO L290 TraceCheckUtils]: 73: Hoare triple {11383#(= |ULTIMATE.start_foo_~i~0#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,068 INFO L290 TraceCheckUtils]: 74: Hoare triple {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,068 INFO L290 TraceCheckUtils]: 75: Hoare triple {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,068 INFO L290 TraceCheckUtils]: 76: Hoare triple {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,069 INFO L290 TraceCheckUtils]: 77: Hoare triple {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,069 INFO L290 TraceCheckUtils]: 78: Hoare triple {11384#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,069 INFO L290 TraceCheckUtils]: 79: Hoare triple {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,070 INFO L290 TraceCheckUtils]: 80: Hoare triple {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,070 INFO L290 TraceCheckUtils]: 81: Hoare triple {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,070 INFO L290 TraceCheckUtils]: 82: Hoare triple {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,071 INFO L290 TraceCheckUtils]: 83: Hoare triple {11385#(and (<= |ULTIMATE.start_foo_~i~0#1| 2) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:56,071 INFO L290 TraceCheckUtils]: 84: Hoare triple {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:56,072 INFO L290 TraceCheckUtils]: 85: Hoare triple {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:56,072 INFO L290 TraceCheckUtils]: 86: Hoare triple {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:56,072 INFO L290 TraceCheckUtils]: 87: Hoare triple {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:56,073 INFO L290 TraceCheckUtils]: 88: Hoare triple {11386#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11387#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,073 INFO L290 TraceCheckUtils]: 89: Hoare triple {11387#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11387#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,073 INFO L290 TraceCheckUtils]: 90: Hoare triple {11387#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {11382#false} is VALID [2022-02-20 23:49:56,074 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 213 proven. 38 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2022-02-20 23:49:56,074 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:56,074 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1632083610] [2022-02-20 23:49:56,074 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1632083610] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:56,074 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [811834689] [2022-02-20 23:49:56,074 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:49:56,075 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:56,075 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:56,076 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:56,096 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-02-20 23:49:56,155 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-02-20 23:49:56,155 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:49:56,156 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:49:56,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:56,173 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:56,212 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:49:56,213 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:49:56,692 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:49:56,732 INFO L290 TraceCheckUtils]: 0: Hoare triple {11381#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11381#true} is VALID [2022-02-20 23:49:56,732 INFO L290 TraceCheckUtils]: 1: Hoare triple {11381#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,733 INFO L290 TraceCheckUtils]: 2: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,733 INFO L290 TraceCheckUtils]: 3: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,734 INFO L290 TraceCheckUtils]: 4: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,734 INFO L290 TraceCheckUtils]: 5: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,734 INFO L290 TraceCheckUtils]: 6: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,735 INFO L290 TraceCheckUtils]: 7: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,736 INFO L290 TraceCheckUtils]: 10: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,736 INFO L290 TraceCheckUtils]: 11: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,736 INFO L290 TraceCheckUtils]: 12: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,736 INFO L290 TraceCheckUtils]: 13: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,738 INFO L290 TraceCheckUtils]: 16: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,738 INFO L290 TraceCheckUtils]: 17: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,738 INFO L290 TraceCheckUtils]: 18: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,738 INFO L290 TraceCheckUtils]: 19: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,739 INFO L290 TraceCheckUtils]: 20: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,739 INFO L290 TraceCheckUtils]: 21: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,739 INFO L290 TraceCheckUtils]: 22: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,740 INFO L290 TraceCheckUtils]: 23: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,740 INFO L290 TraceCheckUtils]: 24: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,740 INFO L290 TraceCheckUtils]: 25: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,741 INFO L290 TraceCheckUtils]: 27: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,741 INFO L290 TraceCheckUtils]: 28: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,743 INFO L290 TraceCheckUtils]: 32: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,743 INFO L290 TraceCheckUtils]: 33: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,743 INFO L290 TraceCheckUtils]: 34: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,743 INFO L290 TraceCheckUtils]: 35: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,744 INFO L290 TraceCheckUtils]: 36: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,744 INFO L290 TraceCheckUtils]: 37: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,744 INFO L290 TraceCheckUtils]: 38: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,745 INFO L290 TraceCheckUtils]: 39: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,745 INFO L290 TraceCheckUtils]: 40: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,745 INFO L290 TraceCheckUtils]: 41: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,746 INFO L290 TraceCheckUtils]: 42: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,746 INFO L290 TraceCheckUtils]: 43: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,746 INFO L290 TraceCheckUtils]: 44: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,747 INFO L290 TraceCheckUtils]: 45: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,747 INFO L290 TraceCheckUtils]: 46: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,747 INFO L290 TraceCheckUtils]: 47: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,748 INFO L290 TraceCheckUtils]: 48: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,755 INFO L290 TraceCheckUtils]: 49: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,755 INFO L290 TraceCheckUtils]: 50: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,756 INFO L290 TraceCheckUtils]: 51: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,756 INFO L290 TraceCheckUtils]: 52: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,756 INFO L290 TraceCheckUtils]: 53: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,757 INFO L290 TraceCheckUtils]: 54: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,757 INFO L290 TraceCheckUtils]: 55: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,757 INFO L290 TraceCheckUtils]: 56: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,758 INFO L290 TraceCheckUtils]: 57: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,758 INFO L290 TraceCheckUtils]: 58: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,758 INFO L290 TraceCheckUtils]: 59: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,759 INFO L290 TraceCheckUtils]: 60: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,759 INFO L290 TraceCheckUtils]: 61: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,759 INFO L290 TraceCheckUtils]: 62: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,759 INFO L290 TraceCheckUtils]: 63: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,760 INFO L290 TraceCheckUtils]: 64: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,760 INFO L290 TraceCheckUtils]: 65: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,760 INFO L290 TraceCheckUtils]: 66: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,761 INFO L290 TraceCheckUtils]: 67: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:56,761 INFO L290 TraceCheckUtils]: 68: Hoare triple {11394#(and (<= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,761 INFO L290 TraceCheckUtils]: 69: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,762 INFO L290 TraceCheckUtils]: 70: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,762 INFO L290 TraceCheckUtils]: 71: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,762 INFO L290 TraceCheckUtils]: 72: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,763 INFO L290 TraceCheckUtils]: 73: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,763 INFO L290 TraceCheckUtils]: 74: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,763 INFO L290 TraceCheckUtils]: 75: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,764 INFO L290 TraceCheckUtils]: 76: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,764 INFO L290 TraceCheckUtils]: 77: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,764 INFO L290 TraceCheckUtils]: 78: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,765 INFO L290 TraceCheckUtils]: 79: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,765 INFO L290 TraceCheckUtils]: 80: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,765 INFO L290 TraceCheckUtils]: 81: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,766 INFO L290 TraceCheckUtils]: 82: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,766 INFO L290 TraceCheckUtils]: 83: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,766 INFO L290 TraceCheckUtils]: 84: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} is VALID [2022-02-20 23:49:56,766 INFO L290 TraceCheckUtils]: 85: Hoare triple {11596#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11648#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,767 INFO L290 TraceCheckUtils]: 86: Hoare triple {11648#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= (select |#length| |ULTIMATE.start_foo_~b#1.base|) 32) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11652#(and (<= |ULTIMATE.start_foo_~i~0#1| 31) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,767 INFO L290 TraceCheckUtils]: 87: Hoare triple {11652#(and (<= |ULTIMATE.start_foo_~i~0#1| 31) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11652#(and (<= |ULTIMATE.start_foo_~i~0#1| 31) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:56,768 INFO L290 TraceCheckUtils]: 88: Hoare triple {11652#(and (<= |ULTIMATE.start_foo_~i~0#1| 31) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11659#(and (<= 1 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 32))} is VALID [2022-02-20 23:49:56,768 INFO L290 TraceCheckUtils]: 89: Hoare triple {11659#(and (<= 1 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11659#(and (<= 1 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 32))} is VALID [2022-02-20 23:49:56,768 INFO L290 TraceCheckUtils]: 90: Hoare triple {11659#(and (<= 1 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~i~0#1| 32))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {11382#false} is VALID [2022-02-20 23:49:56,769 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 3 proven. 227 refuted. 0 times theorem prover too weak. 252 trivial. 0 not checked. [2022-02-20 23:49:56,769 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:57,100 INFO L290 TraceCheckUtils]: 90: Hoare triple {11666#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !(0 <= foo_~i~0#1 && foo_~i~0#1 < 33); {11382#false} is VALID [2022-02-20 23:49:57,100 INFO L290 TraceCheckUtils]: 89: Hoare triple {11666#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11666#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:57,101 INFO L290 TraceCheckUtils]: 88: Hoare triple {11673#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11666#(and (< |ULTIMATE.start_foo_~i~0#1| 33) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:57,101 INFO L290 TraceCheckUtils]: 87: Hoare triple {11673#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11673#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:57,101 INFO L290 TraceCheckUtils]: 86: Hoare triple {11680#(or (not (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|))) (and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1))))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11673#(and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1)))} is VALID [2022-02-20 23:49:57,102 INFO L290 TraceCheckUtils]: 85: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11680#(or (not (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|))) (and (< |ULTIMATE.start_foo_~i~0#1| 32) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 1))))} is VALID [2022-02-20 23:49:57,102 INFO L290 TraceCheckUtils]: 84: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,102 INFO L290 TraceCheckUtils]: 83: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,103 INFO L290 TraceCheckUtils]: 82: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,103 INFO L290 TraceCheckUtils]: 81: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,103 INFO L290 TraceCheckUtils]: 80: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,104 INFO L290 TraceCheckUtils]: 79: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,104 INFO L290 TraceCheckUtils]: 78: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,104 INFO L290 TraceCheckUtils]: 77: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,105 INFO L290 TraceCheckUtils]: 76: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,105 INFO L290 TraceCheckUtils]: 75: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,105 INFO L290 TraceCheckUtils]: 74: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,106 INFO L290 TraceCheckUtils]: 73: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,106 INFO L290 TraceCheckUtils]: 72: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,106 INFO L290 TraceCheckUtils]: 71: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,106 INFO L290 TraceCheckUtils]: 70: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,107 INFO L290 TraceCheckUtils]: 69: Hoare triple {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,107 INFO L290 TraceCheckUtils]: 68: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11684#(< (select |#length| |ULTIMATE.start_foo_~b#1.base|) (+ 33 |ULTIMATE.start_foo_~b#1.offset|))} is VALID [2022-02-20 23:49:57,107 INFO L290 TraceCheckUtils]: 67: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,108 INFO L290 TraceCheckUtils]: 66: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,108 INFO L290 TraceCheckUtils]: 65: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,108 INFO L290 TraceCheckUtils]: 64: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,108 INFO L290 TraceCheckUtils]: 63: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,109 INFO L290 TraceCheckUtils]: 62: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,109 INFO L290 TraceCheckUtils]: 61: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,109 INFO L290 TraceCheckUtils]: 60: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,109 INFO L290 TraceCheckUtils]: 59: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,110 INFO L290 TraceCheckUtils]: 58: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,110 INFO L290 TraceCheckUtils]: 57: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,110 INFO L290 TraceCheckUtils]: 56: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,111 INFO L290 TraceCheckUtils]: 55: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,111 INFO L290 TraceCheckUtils]: 54: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,111 INFO L290 TraceCheckUtils]: 53: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,112 INFO L290 TraceCheckUtils]: 52: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,112 INFO L290 TraceCheckUtils]: 51: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,113 INFO L290 TraceCheckUtils]: 50: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,113 INFO L290 TraceCheckUtils]: 49: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,113 INFO L290 TraceCheckUtils]: 48: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,114 INFO L290 TraceCheckUtils]: 47: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,114 INFO L290 TraceCheckUtils]: 46: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,115 INFO L290 TraceCheckUtils]: 44: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,115 INFO L290 TraceCheckUtils]: 42: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,115 INFO L290 TraceCheckUtils]: 41: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,116 INFO L290 TraceCheckUtils]: 40: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,116 INFO L290 TraceCheckUtils]: 39: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,116 INFO L290 TraceCheckUtils]: 38: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,117 INFO L290 TraceCheckUtils]: 37: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,117 INFO L290 TraceCheckUtils]: 36: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,117 INFO L290 TraceCheckUtils]: 35: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,117 INFO L290 TraceCheckUtils]: 34: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,118 INFO L290 TraceCheckUtils]: 32: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,118 INFO L290 TraceCheckUtils]: 31: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,119 INFO L290 TraceCheckUtils]: 30: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,119 INFO L290 TraceCheckUtils]: 29: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,119 INFO L290 TraceCheckUtils]: 28: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,120 INFO L290 TraceCheckUtils]: 27: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,120 INFO L290 TraceCheckUtils]: 26: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,120 INFO L290 TraceCheckUtils]: 25: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,120 INFO L290 TraceCheckUtils]: 24: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,121 INFO L290 TraceCheckUtils]: 23: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,121 INFO L290 TraceCheckUtils]: 21: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,122 INFO L290 TraceCheckUtils]: 20: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,122 INFO L290 TraceCheckUtils]: 19: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,122 INFO L290 TraceCheckUtils]: 18: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,123 INFO L290 TraceCheckUtils]: 17: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,123 INFO L290 TraceCheckUtils]: 15: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,124 INFO L290 TraceCheckUtils]: 14: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,124 INFO L290 TraceCheckUtils]: 13: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,124 INFO L290 TraceCheckUtils]: 12: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,124 INFO L290 TraceCheckUtils]: 11: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,125 INFO L290 TraceCheckUtils]: 10: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,125 INFO L290 TraceCheckUtils]: 9: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,125 INFO L290 TraceCheckUtils]: 8: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,126 INFO L290 TraceCheckUtils]: 6: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,126 INFO L290 TraceCheckUtils]: 5: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,126 INFO L290 TraceCheckUtils]: 4: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,143 INFO L290 TraceCheckUtils]: 3: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {11381#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {11736#(< (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) (+ 33 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:49:57,145 INFO L290 TraceCheckUtils]: 0: Hoare triple {11381#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11381#true} is VALID [2022-02-20 23:49:57,145 INFO L134 CoverageAnalysis]: Checked inductivity of 482 backedges. 0 proven. 230 refuted. 0 times theorem prover too weak. 252 trivial. 0 not checked. [2022-02-20 23:49:57,145 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [811834689] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:57,146 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:57,146 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 16 [2022-02-20 23:49:57,146 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2123745507] [2022-02-20 23:49:57,146 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:57,148 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 91 [2022-02-20 23:49:57,156 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:57,156 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 23:49:57,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:57,206 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:49:57,206 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:57,207 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:49:57,207 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=207, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:49:57,207 INFO L87 Difference]: Start difference. First operand 94 states and 95 transitions. Second operand has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 23:49:57,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:57,656 INFO L93 Difference]: Finished difference Result 117 states and 120 transitions. [2022-02-20 23:49:57,657 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:49:57,657 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 91 [2022-02-20 23:49:57,658 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:57,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 23:49:57,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-02-20 23:49:57,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 23:49:57,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-02-20 23:49:57,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2022-02-20 23:49:57,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:57,702 INFO L225 Difference]: With dead ends: 117 [2022-02-20 23:49:57,702 INFO L226 Difference]: Without dead ends: 117 [2022-02-20 23:49:57,702 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 196 GetRequests, 174 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=160, Invalid=392, Unknown=0, NotChecked=0, Total=552 [2022-02-20 23:49:57,703 INFO L933 BasicCegarLoop]: 11 mSDtfsCounter, 325 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 213 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 325 SdHoareTripleChecker+Valid, 60 SdHoareTripleChecker+Invalid, 234 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 213 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:57,705 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [325 Valid, 60 Invalid, 234 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 213 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:57,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2022-02-20 23:49:57,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 93. [2022-02-20 23:49:57,727 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:57,727 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 23:49:57,728 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 23:49:57,728 INFO L87 Difference]: Start difference. First operand 117 states. Second operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 23:49:57,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:57,729 INFO L93 Difference]: Finished difference Result 117 states and 120 transitions. [2022-02-20 23:49:57,729 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 120 transitions. [2022-02-20 23:49:57,729 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:57,729 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:57,730 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 117 states. [2022-02-20 23:49:57,730 INFO L87 Difference]: Start difference. First operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 117 states. [2022-02-20 23:49:57,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:57,731 INFO L93 Difference]: Finished difference Result 117 states and 120 transitions. [2022-02-20 23:49:57,731 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 120 transitions. [2022-02-20 23:49:57,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:57,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:57,731 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:57,732 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:57,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 92 states have (on average 1.0217391304347827) internal successors, (94), 92 states have internal predecessors, (94), 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 23:49:57,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 94 transitions. [2022-02-20 23:49:57,732 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 94 transitions. Word has length 91 [2022-02-20 23:49:57,733 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:57,733 INFO L470 AbstractCegarLoop]: Abstraction has 93 states and 94 transitions. [2022-02-20 23:49:57,733 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 5.4375) internal successors, (87), 17 states have internal predecessors, (87), 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 23:49:57,733 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 94 transitions. [2022-02-20 23:49:57,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2022-02-20 23:49:57,733 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:57,734 INFO L514 BasicCegarLoop]: trace histogram [14, 14, 13, 13, 13, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1] [2022-02-20 23:49:57,753 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:57,935 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:57,935 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:49:57,936 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:57,936 INFO L85 PathProgramCache]: Analyzing trace with hash -1372184046, now seen corresponding path program 1 times [2022-02-20 23:49:57,936 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:57,936 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1687596697] [2022-02-20 23:49:57,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:57,936 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:57,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:58,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {12401#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12401#true} is VALID [2022-02-20 23:49:58,080 INFO L290 TraceCheckUtils]: 1: Hoare triple {12401#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,081 INFO L290 TraceCheckUtils]: 3: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,081 INFO L290 TraceCheckUtils]: 4: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,082 INFO L290 TraceCheckUtils]: 6: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,084 INFO L290 TraceCheckUtils]: 10: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,085 INFO L290 TraceCheckUtils]: 14: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#res#1 := foo_~i~0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,085 INFO L290 TraceCheckUtils]: 15: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,086 INFO L290 TraceCheckUtils]: 16: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,086 INFO L290 TraceCheckUtils]: 17: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} havoc main_#t~ret3#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,086 INFO L290 TraceCheckUtils]: 18: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,087 INFO L290 TraceCheckUtils]: 19: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,088 INFO L290 TraceCheckUtils]: 21: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,088 INFO L290 TraceCheckUtils]: 22: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,088 INFO L290 TraceCheckUtils]: 23: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,089 INFO L290 TraceCheckUtils]: 24: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,089 INFO L290 TraceCheckUtils]: 25: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,089 INFO L290 TraceCheckUtils]: 26: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,090 INFO L290 TraceCheckUtils]: 27: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,090 INFO L290 TraceCheckUtils]: 28: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,090 INFO L290 TraceCheckUtils]: 29: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,091 INFO L290 TraceCheckUtils]: 30: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,091 INFO L290 TraceCheckUtils]: 31: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,092 INFO L290 TraceCheckUtils]: 32: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,092 INFO L290 TraceCheckUtils]: 33: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,093 INFO L290 TraceCheckUtils]: 36: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#res#1 := foo_~i~0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,094 INFO L290 TraceCheckUtils]: 37: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,094 INFO L290 TraceCheckUtils]: 38: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,094 INFO L290 TraceCheckUtils]: 39: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} havoc main_#t~ret3#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,095 INFO L290 TraceCheckUtils]: 40: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,095 INFO L290 TraceCheckUtils]: 41: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,096 INFO L290 TraceCheckUtils]: 42: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,096 INFO L290 TraceCheckUtils]: 43: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,096 INFO L290 TraceCheckUtils]: 44: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,097 INFO L290 TraceCheckUtils]: 45: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,097 INFO L290 TraceCheckUtils]: 46: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,097 INFO L290 TraceCheckUtils]: 47: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,098 INFO L290 TraceCheckUtils]: 48: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,098 INFO L290 TraceCheckUtils]: 49: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,098 INFO L290 TraceCheckUtils]: 50: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,099 INFO L290 TraceCheckUtils]: 51: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,099 INFO L290 TraceCheckUtils]: 52: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,099 INFO L290 TraceCheckUtils]: 53: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,100 INFO L290 TraceCheckUtils]: 54: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,100 INFO L290 TraceCheckUtils]: 55: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,100 INFO L290 TraceCheckUtils]: 56: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,101 INFO L290 TraceCheckUtils]: 57: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,101 INFO L290 TraceCheckUtils]: 58: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,102 INFO L290 TraceCheckUtils]: 59: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,102 INFO L290 TraceCheckUtils]: 60: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,102 INFO L290 TraceCheckUtils]: 61: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,103 INFO L290 TraceCheckUtils]: 62: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,103 INFO L290 TraceCheckUtils]: 63: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} foo_#res#1 := foo_~i~0#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,103 INFO L290 TraceCheckUtils]: 64: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,104 INFO L290 TraceCheckUtils]: 65: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,104 INFO L290 TraceCheckUtils]: 66: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} havoc main_#t~ret3#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,104 INFO L290 TraceCheckUtils]: 67: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} is VALID [2022-02-20 23:49:58,105 INFO L290 TraceCheckUtils]: 68: Hoare triple {12403#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|) 32))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:58,105 INFO L290 TraceCheckUtils]: 69: Hoare triple {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:58,106 INFO L290 TraceCheckUtils]: 70: Hoare triple {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:58,106 INFO L290 TraceCheckUtils]: 71: Hoare triple {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:58,106 INFO L290 TraceCheckUtils]: 72: Hoare triple {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:49:58,107 INFO L290 TraceCheckUtils]: 73: Hoare triple {12404#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,107 INFO L290 TraceCheckUtils]: 74: Hoare triple {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,110 INFO L290 TraceCheckUtils]: 75: Hoare triple {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,110 INFO L290 TraceCheckUtils]: 76: Hoare triple {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,111 INFO L290 TraceCheckUtils]: 77: Hoare triple {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,111 INFO L290 TraceCheckUtils]: 78: Hoare triple {12405#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 1) (= |ULTIMATE.start_foo_~b#1.offset| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,112 INFO L290 TraceCheckUtils]: 79: Hoare triple {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,112 INFO L290 TraceCheckUtils]: 80: Hoare triple {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,112 INFO L290 TraceCheckUtils]: 81: Hoare triple {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,113 INFO L290 TraceCheckUtils]: 82: Hoare triple {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,113 INFO L290 TraceCheckUtils]: 83: Hoare triple {12406#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:58,114 INFO L290 TraceCheckUtils]: 84: Hoare triple {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:58,114 INFO L290 TraceCheckUtils]: 85: Hoare triple {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:58,114 INFO L290 TraceCheckUtils]: 86: Hoare triple {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:58,115 INFO L290 TraceCheckUtils]: 87: Hoare triple {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:49:58,115 INFO L290 TraceCheckUtils]: 88: Hoare triple {12407#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12408#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,116 INFO L290 TraceCheckUtils]: 89: Hoare triple {12408#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12408#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0))} is VALID [2022-02-20 23:49:58,116 INFO L290 TraceCheckUtils]: 90: Hoare triple {12408#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12409#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:49:58,116 INFO L290 TraceCheckUtils]: 91: Hoare triple {12409#(and (= (+ (select |#length| |ULTIMATE.start_foo_~b#1.base|) (- 32)) 0) (<= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {12402#false} is VALID [2022-02-20 23:49:58,117 INFO L134 CoverageAnalysis]: Checked inductivity of 495 backedges. 0 proven. 264 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2022-02-20 23:49:58,117 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:58,117 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1687596697] [2022-02-20 23:49:58,117 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1687596697] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:58,117 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [773100296] [2022-02-20 23:49:58,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:58,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:58,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:58,119 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:58,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-02-20 23:49:58,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:58,217 INFO L263 TraceCheckSpWp]: Trace formula consists of 336 conjuncts, 27 conjunts are in the unsatisfiable core [2022-02-20 23:49:58,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:58,232 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:58,262 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:49:58,262 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:49:58,799 INFO L290 TraceCheckUtils]: 0: Hoare triple {12401#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12401#true} is VALID [2022-02-20 23:49:58,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {12401#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,801 INFO L290 TraceCheckUtils]: 3: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,801 INFO L290 TraceCheckUtils]: 4: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,803 INFO L290 TraceCheckUtils]: 6: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,803 INFO L290 TraceCheckUtils]: 7: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,804 INFO L290 TraceCheckUtils]: 10: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,805 INFO L290 TraceCheckUtils]: 11: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,805 INFO L290 TraceCheckUtils]: 12: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,805 INFO L290 TraceCheckUtils]: 13: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,806 INFO L290 TraceCheckUtils]: 16: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} havoc main_#t~ret3#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,808 INFO L290 TraceCheckUtils]: 22: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,808 INFO L290 TraceCheckUtils]: 23: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,809 INFO L290 TraceCheckUtils]: 25: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,809 INFO L290 TraceCheckUtils]: 26: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,810 INFO L290 TraceCheckUtils]: 27: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,811 INFO L290 TraceCheckUtils]: 30: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,811 INFO L290 TraceCheckUtils]: 31: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,811 INFO L290 TraceCheckUtils]: 32: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,812 INFO L290 TraceCheckUtils]: 33: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,812 INFO L290 TraceCheckUtils]: 34: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,812 INFO L290 TraceCheckUtils]: 35: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,812 INFO L290 TraceCheckUtils]: 36: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,813 INFO L290 TraceCheckUtils]: 37: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,813 INFO L290 TraceCheckUtils]: 38: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,814 INFO L290 TraceCheckUtils]: 39: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} havoc main_#t~ret3#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,814 INFO L290 TraceCheckUtils]: 40: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,823 INFO L290 TraceCheckUtils]: 41: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,824 INFO L290 TraceCheckUtils]: 42: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,824 INFO L290 TraceCheckUtils]: 43: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,825 INFO L290 TraceCheckUtils]: 44: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,825 INFO L290 TraceCheckUtils]: 45: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,826 INFO L290 TraceCheckUtils]: 46: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,826 INFO L290 TraceCheckUtils]: 47: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,826 INFO L290 TraceCheckUtils]: 48: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,827 INFO L290 TraceCheckUtils]: 49: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,827 INFO L290 TraceCheckUtils]: 50: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,828 INFO L290 TraceCheckUtils]: 51: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,828 INFO L290 TraceCheckUtils]: 52: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,829 INFO L290 TraceCheckUtils]: 53: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,829 INFO L290 TraceCheckUtils]: 54: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,829 INFO L290 TraceCheckUtils]: 55: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,830 INFO L290 TraceCheckUtils]: 56: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,830 INFO L290 TraceCheckUtils]: 57: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,831 INFO L290 TraceCheckUtils]: 58: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,831 INFO L290 TraceCheckUtils]: 59: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,832 INFO L290 TraceCheckUtils]: 60: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,832 INFO L290 TraceCheckUtils]: 61: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,832 INFO L290 TraceCheckUtils]: 62: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,833 INFO L290 TraceCheckUtils]: 63: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} foo_#res#1 := foo_~i~0#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,833 INFO L290 TraceCheckUtils]: 64: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,834 INFO L290 TraceCheckUtils]: 65: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,835 INFO L290 TraceCheckUtils]: 66: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} havoc main_#t~ret3#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,835 INFO L290 TraceCheckUtils]: 67: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} is VALID [2022-02-20 23:49:58,836 INFO L290 TraceCheckUtils]: 68: Hoare triple {12416#(and (= |ULTIMATE.start_main_~#mask~0#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,836 INFO L290 TraceCheckUtils]: 69: Hoare triple {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,837 INFO L290 TraceCheckUtils]: 70: Hoare triple {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,837 INFO L290 TraceCheckUtils]: 71: Hoare triple {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,838 INFO L290 TraceCheckUtils]: 72: Hoare triple {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,839 INFO L290 TraceCheckUtils]: 73: Hoare triple {12618#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,839 INFO L290 TraceCheckUtils]: 74: Hoare triple {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,840 INFO L290 TraceCheckUtils]: 75: Hoare triple {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,840 INFO L290 TraceCheckUtils]: 76: Hoare triple {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,841 INFO L290 TraceCheckUtils]: 77: Hoare triple {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,841 INFO L290 TraceCheckUtils]: 78: Hoare triple {12634#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (= |ULTIMATE.start_foo_~i~0#1| 1) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,841 INFO L290 TraceCheckUtils]: 79: Hoare triple {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,842 INFO L290 TraceCheckUtils]: 80: Hoare triple {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,842 INFO L290 TraceCheckUtils]: 81: Hoare triple {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,843 INFO L290 TraceCheckUtils]: 82: Hoare triple {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:49:58,843 INFO L290 TraceCheckUtils]: 83: Hoare triple {12650#(and (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,844 INFO L290 TraceCheckUtils]: 84: Hoare triple {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,844 INFO L290 TraceCheckUtils]: 85: Hoare triple {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,845 INFO L290 TraceCheckUtils]: 86: Hoare triple {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,845 INFO L290 TraceCheckUtils]: 87: Hoare triple {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,845 INFO L290 TraceCheckUtils]: 88: Hoare triple {12666#(and (= 2 (+ (- 1) |ULTIMATE.start_foo_~i~0#1|)) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,846 INFO L290 TraceCheckUtils]: 89: Hoare triple {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,846 INFO L290 TraceCheckUtils]: 90: Hoare triple {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:58,847 INFO L290 TraceCheckUtils]: 91: Hoare triple {12682#(and (= |ULTIMATE.start_foo_~i~0#1| 4) (= |ULTIMATE.start_foo_~b#1.offset| 0) (<= 32 (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {12402#false} is VALID [2022-02-20 23:49:58,847 INFO L134 CoverageAnalysis]: Checked inductivity of 495 backedges. 0 proven. 264 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2022-02-20 23:49:58,847 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:59,652 INFO L290 TraceCheckUtils]: 91: Hoare triple {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {12402#false} is VALID [2022-02-20 23:49:59,653 INFO L290 TraceCheckUtils]: 90: Hoare triple {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,653 INFO L290 TraceCheckUtils]: 89: Hoare triple {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,654 INFO L290 TraceCheckUtils]: 88: Hoare triple {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12692#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,654 INFO L290 TraceCheckUtils]: 87: Hoare triple {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:59,655 INFO L290 TraceCheckUtils]: 86: Hoare triple {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:59,655 INFO L290 TraceCheckUtils]: 85: Hoare triple {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:59,655 INFO L290 TraceCheckUtils]: 84: Hoare triple {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:59,656 INFO L290 TraceCheckUtils]: 83: Hoare triple {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12702#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1)))} is VALID [2022-02-20 23:49:59,656 INFO L290 TraceCheckUtils]: 82: Hoare triple {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,657 INFO L290 TraceCheckUtils]: 81: Hoare triple {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,657 INFO L290 TraceCheckUtils]: 80: Hoare triple {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,658 INFO L290 TraceCheckUtils]: 79: Hoare triple {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,658 INFO L290 TraceCheckUtils]: 78: Hoare triple {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12718#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 2 |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:49:59,658 INFO L290 TraceCheckUtils]: 77: Hoare triple {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,659 INFO L290 TraceCheckUtils]: 76: Hoare triple {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,659 INFO L290 TraceCheckUtils]: 75: Hoare triple {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,660 INFO L290 TraceCheckUtils]: 74: Hoare triple {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,660 INFO L290 TraceCheckUtils]: 73: Hoare triple {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12734#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 3 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,660 INFO L290 TraceCheckUtils]: 72: Hoare triple {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,661 INFO L290 TraceCheckUtils]: 71: Hoare triple {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,661 INFO L290 TraceCheckUtils]: 70: Hoare triple {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,662 INFO L290 TraceCheckUtils]: 69: Hoare triple {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,662 INFO L290 TraceCheckUtils]: 68: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12750#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| 4 |ULTIMATE.start_foo_~b#1.offset|)))} is VALID [2022-02-20 23:49:59,662 INFO L290 TraceCheckUtils]: 67: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,663 INFO L290 TraceCheckUtils]: 66: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} havoc main_#t~ret3#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,663 INFO L290 TraceCheckUtils]: 65: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,664 INFO L290 TraceCheckUtils]: 64: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,664 INFO L290 TraceCheckUtils]: 63: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#res#1 := foo_~i~0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,664 INFO L290 TraceCheckUtils]: 62: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,665 INFO L290 TraceCheckUtils]: 61: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,665 INFO L290 TraceCheckUtils]: 60: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,665 INFO L290 TraceCheckUtils]: 59: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,666 INFO L290 TraceCheckUtils]: 58: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,666 INFO L290 TraceCheckUtils]: 57: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,666 INFO L290 TraceCheckUtils]: 56: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,667 INFO L290 TraceCheckUtils]: 55: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,667 INFO L290 TraceCheckUtils]: 54: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,668 INFO L290 TraceCheckUtils]: 53: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,668 INFO L290 TraceCheckUtils]: 52: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,668 INFO L290 TraceCheckUtils]: 51: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,669 INFO L290 TraceCheckUtils]: 50: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,669 INFO L290 TraceCheckUtils]: 49: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,669 INFO L290 TraceCheckUtils]: 48: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,670 INFO L290 TraceCheckUtils]: 47: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,670 INFO L290 TraceCheckUtils]: 46: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,670 INFO L290 TraceCheckUtils]: 45: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,671 INFO L290 TraceCheckUtils]: 44: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,671 INFO L290 TraceCheckUtils]: 43: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,671 INFO L290 TraceCheckUtils]: 42: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,672 INFO L290 TraceCheckUtils]: 41: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,672 INFO L290 TraceCheckUtils]: 40: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,673 INFO L290 TraceCheckUtils]: 39: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} havoc main_#t~ret3#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,673 INFO L290 TraceCheckUtils]: 37: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,674 INFO L290 TraceCheckUtils]: 36: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#res#1 := foo_~i~0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,674 INFO L290 TraceCheckUtils]: 35: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,675 INFO L290 TraceCheckUtils]: 34: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,675 INFO L290 TraceCheckUtils]: 33: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,675 INFO L290 TraceCheckUtils]: 32: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,676 INFO L290 TraceCheckUtils]: 31: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,676 INFO L290 TraceCheckUtils]: 30: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,676 INFO L290 TraceCheckUtils]: 29: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,677 INFO L290 TraceCheckUtils]: 28: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,677 INFO L290 TraceCheckUtils]: 27: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,677 INFO L290 TraceCheckUtils]: 26: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,678 INFO L290 TraceCheckUtils]: 25: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,678 INFO L290 TraceCheckUtils]: 24: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,679 INFO L290 TraceCheckUtils]: 23: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,679 INFO L290 TraceCheckUtils]: 22: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,679 INFO L290 TraceCheckUtils]: 21: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,680 INFO L290 TraceCheckUtils]: 20: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,680 INFO L290 TraceCheckUtils]: 19: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,681 INFO L290 TraceCheckUtils]: 18: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,681 INFO L290 TraceCheckUtils]: 17: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} havoc main_#t~ret3#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,681 INFO L290 TraceCheckUtils]: 16: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,682 INFO L290 TraceCheckUtils]: 14: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#res#1 := foo_~i~0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,682 INFO L290 TraceCheckUtils]: 13: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,684 INFO L290 TraceCheckUtils]: 10: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,685 INFO L290 TraceCheckUtils]: 7: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,685 INFO L290 TraceCheckUtils]: 6: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,685 INFO L290 TraceCheckUtils]: 5: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,686 INFO L290 TraceCheckUtils]: 4: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,686 INFO L290 TraceCheckUtils]: 3: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {12401#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {12766#(and (<= (+ 5 |ULTIMATE.start_main_~#mask~0#1.offset|) (select |#length| |ULTIMATE.start_main_~#mask~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~#mask~0#1.offset| 4)))} is VALID [2022-02-20 23:49:59,687 INFO L290 TraceCheckUtils]: 0: Hoare triple {12401#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12401#true} is VALID [2022-02-20 23:49:59,688 INFO L134 CoverageAnalysis]: Checked inductivity of 495 backedges. 0 proven. 264 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2022-02-20 23:49:59,688 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [773100296] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:59,688 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:59,688 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 20 [2022-02-20 23:49:59,689 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1687045898] [2022-02-20 23:49:59,689 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:59,689 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 92 [2022-02-20 23:49:59,689 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:59,690 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 23:49:59,776 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:59,777 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-20 23:49:59,777 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:59,777 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-20 23:49:59,777 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=330, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:49:59,778 INFO L87 Difference]: Start difference. First operand 93 states and 94 transitions. Second operand has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 23:50:00,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:00,412 INFO L93 Difference]: Finished difference Result 159 states and 166 transitions. [2022-02-20 23:50:00,412 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:50:00,412 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 92 [2022-02-20 23:50:00,412 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:00,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 23:50:00,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 125 transitions. [2022-02-20 23:50:00,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 23:50:00,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 125 transitions. [2022-02-20 23:50:00,417 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 125 transitions. [2022-02-20 23:50:00,478 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:00,480 INFO L225 Difference]: With dead ends: 159 [2022-02-20 23:50:00,480 INFO L226 Difference]: Without dead ends: 159 [2022-02-20 23:50:00,480 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 133 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=240, Invalid=690, Unknown=0, NotChecked=0, Total=930 [2022-02-20 23:50:00,481 INFO L933 BasicCegarLoop]: 11 mSDtfsCounter, 241 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 328 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 241 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 345 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 328 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:00,482 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [241 Valid, 100 Invalid, 345 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 328 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:50:00,482 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-02-20 23:50:00,484 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 123. [2022-02-20 23:50:00,484 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:00,484 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 23:50:00,484 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 23:50:00,484 INFO L87 Difference]: Start difference. First operand 159 states. Second operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 23:50:00,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:00,486 INFO L93 Difference]: Finished difference Result 159 states and 166 transitions. [2022-02-20 23:50:00,486 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 166 transitions. [2022-02-20 23:50:00,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:00,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:00,486 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 159 states. [2022-02-20 23:50:00,487 INFO L87 Difference]: Start difference. First operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 159 states. [2022-02-20 23:50:00,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:00,488 INFO L93 Difference]: Finished difference Result 159 states and 166 transitions. [2022-02-20 23:50:00,488 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 166 transitions. [2022-02-20 23:50:00,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:00,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:00,489 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:00,489 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:00,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 122 states have (on average 1.0655737704918034) internal successors, (130), 122 states have internal predecessors, (130), 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 23:50:00,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 130 transitions. [2022-02-20 23:50:00,491 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 130 transitions. Word has length 92 [2022-02-20 23:50:00,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:00,491 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 130 transitions. [2022-02-20 23:50:00,491 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 5.6) internal successors, (112), 21 states have internal predecessors, (112), 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 23:50:00,491 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 130 transitions. [2022-02-20 23:50:00,492 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-02-20 23:50:00,492 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:00,493 INFO L514 BasicCegarLoop]: trace histogram [20, 20, 19, 19, 19, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1] [2022-02-20 23:50:00,511 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:50:00,700 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable23 [2022-02-20 23:50:00,700 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:00,701 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:00,701 INFO L85 PathProgramCache]: Analyzing trace with hash -285868558, now seen corresponding path program 2 times [2022-02-20 23:50:00,701 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:00,701 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327242720] [2022-02-20 23:50:00,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:00,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:00,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:00,899 INFO L290 TraceCheckUtils]: 0: Hoare triple {13590#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13590#true} is VALID [2022-02-20 23:50:00,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {13590#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,900 INFO L290 TraceCheckUtils]: 3: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,900 INFO L290 TraceCheckUtils]: 4: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,901 INFO L290 TraceCheckUtils]: 5: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,901 INFO L290 TraceCheckUtils]: 6: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,902 INFO L290 TraceCheckUtils]: 9: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,902 INFO L290 TraceCheckUtils]: 10: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,903 INFO L290 TraceCheckUtils]: 11: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,903 INFO L290 TraceCheckUtils]: 12: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,904 INFO L290 TraceCheckUtils]: 14: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,904 INFO L290 TraceCheckUtils]: 16: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:00,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {13592#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,905 INFO L290 TraceCheckUtils]: 19: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,906 INFO L290 TraceCheckUtils]: 20: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,906 INFO L290 TraceCheckUtils]: 22: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,914 INFO L290 TraceCheckUtils]: 23: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,914 INFO L290 TraceCheckUtils]: 24: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,914 INFO L290 TraceCheckUtils]: 25: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,915 INFO L290 TraceCheckUtils]: 26: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,915 INFO L290 TraceCheckUtils]: 27: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,915 INFO L290 TraceCheckUtils]: 28: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,915 INFO L290 TraceCheckUtils]: 29: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,916 INFO L290 TraceCheckUtils]: 31: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,916 INFO L290 TraceCheckUtils]: 32: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,918 INFO L290 TraceCheckUtils]: 37: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,918 INFO L290 TraceCheckUtils]: 38: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,918 INFO L290 TraceCheckUtils]: 39: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:00,919 INFO L290 TraceCheckUtils]: 40: Hoare triple {13593#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,919 INFO L290 TraceCheckUtils]: 41: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,919 INFO L290 TraceCheckUtils]: 42: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,920 INFO L290 TraceCheckUtils]: 43: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,920 INFO L290 TraceCheckUtils]: 44: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,920 INFO L290 TraceCheckUtils]: 45: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,921 INFO L290 TraceCheckUtils]: 46: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,921 INFO L290 TraceCheckUtils]: 47: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,921 INFO L290 TraceCheckUtils]: 48: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,922 INFO L290 TraceCheckUtils]: 49: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,922 INFO L290 TraceCheckUtils]: 50: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,922 INFO L290 TraceCheckUtils]: 51: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,922 INFO L290 TraceCheckUtils]: 52: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,923 INFO L290 TraceCheckUtils]: 53: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,923 INFO L290 TraceCheckUtils]: 54: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,923 INFO L290 TraceCheckUtils]: 55: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,924 INFO L290 TraceCheckUtils]: 56: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,924 INFO L290 TraceCheckUtils]: 57: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,924 INFO L290 TraceCheckUtils]: 58: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,924 INFO L290 TraceCheckUtils]: 59: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,925 INFO L290 TraceCheckUtils]: 60: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,926 INFO L290 TraceCheckUtils]: 61: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,926 INFO L290 TraceCheckUtils]: 62: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,926 INFO L290 TraceCheckUtils]: 63: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#res#1 := foo_~i~0#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,927 INFO L290 TraceCheckUtils]: 64: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,927 INFO L290 TraceCheckUtils]: 65: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,927 INFO L290 TraceCheckUtils]: 66: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} havoc main_#t~ret3#1; {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:00,928 INFO L290 TraceCheckUtils]: 67: Hoare triple {13594#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13595#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:00,928 INFO L290 TraceCheckUtils]: 68: Hoare triple {13595#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,929 INFO L290 TraceCheckUtils]: 69: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,929 INFO L290 TraceCheckUtils]: 70: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,929 INFO L290 TraceCheckUtils]: 71: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,929 INFO L290 TraceCheckUtils]: 72: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,930 INFO L290 TraceCheckUtils]: 73: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,930 INFO L290 TraceCheckUtils]: 74: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,930 INFO L290 TraceCheckUtils]: 75: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,931 INFO L290 TraceCheckUtils]: 76: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,931 INFO L290 TraceCheckUtils]: 77: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,931 INFO L290 TraceCheckUtils]: 78: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,931 INFO L290 TraceCheckUtils]: 79: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,932 INFO L290 TraceCheckUtils]: 80: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,932 INFO L290 TraceCheckUtils]: 81: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,932 INFO L290 TraceCheckUtils]: 82: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,933 INFO L290 TraceCheckUtils]: 83: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,933 INFO L290 TraceCheckUtils]: 84: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,933 INFO L290 TraceCheckUtils]: 85: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,934 INFO L290 TraceCheckUtils]: 86: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,947 INFO L290 TraceCheckUtils]: 87: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,948 INFO L290 TraceCheckUtils]: 88: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,948 INFO L290 TraceCheckUtils]: 89: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,948 INFO L290 TraceCheckUtils]: 90: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,949 INFO L290 TraceCheckUtils]: 91: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,949 INFO L290 TraceCheckUtils]: 92: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,949 INFO L290 TraceCheckUtils]: 93: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,950 INFO L290 TraceCheckUtils]: 94: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} is VALID [2022-02-20 23:50:00,950 INFO L290 TraceCheckUtils]: 95: Hoare triple {13596#(<= |ULTIMATE.start_foo_~size#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:00,951 INFO L290 TraceCheckUtils]: 96: Hoare triple {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:00,951 INFO L290 TraceCheckUtils]: 97: Hoare triple {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:00,951 INFO L290 TraceCheckUtils]: 98: Hoare triple {13597#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:00,952 INFO L290 TraceCheckUtils]: 99: Hoare triple {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:00,952 INFO L290 TraceCheckUtils]: 100: Hoare triple {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:00,953 INFO L290 TraceCheckUtils]: 101: Hoare triple {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:00,953 INFO L290 TraceCheckUtils]: 102: Hoare triple {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:00,954 INFO L290 TraceCheckUtils]: 103: Hoare triple {13598#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:00,954 INFO L290 TraceCheckUtils]: 104: Hoare triple {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:00,954 INFO L290 TraceCheckUtils]: 105: Hoare triple {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:00,955 INFO L290 TraceCheckUtils]: 106: Hoare triple {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:00,955 INFO L290 TraceCheckUtils]: 107: Hoare triple {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:00,955 INFO L290 TraceCheckUtils]: 108: Hoare triple {13599#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,956 INFO L290 TraceCheckUtils]: 109: Hoare triple {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,956 INFO L290 TraceCheckUtils]: 110: Hoare triple {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,956 INFO L290 TraceCheckUtils]: 111: Hoare triple {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,957 INFO L290 TraceCheckUtils]: 112: Hoare triple {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,957 INFO L290 TraceCheckUtils]: 113: Hoare triple {13600#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,958 INFO L290 TraceCheckUtils]: 114: Hoare triple {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,958 INFO L290 TraceCheckUtils]: 115: Hoare triple {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,958 INFO L290 TraceCheckUtils]: 116: Hoare triple {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,958 INFO L290 TraceCheckUtils]: 117: Hoare triple {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,959 INFO L290 TraceCheckUtils]: 118: Hoare triple {13601#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13602#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:00,959 INFO L290 TraceCheckUtils]: 119: Hoare triple {13602#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13591#false} is VALID [2022-02-20 23:50:00,959 INFO L290 TraceCheckUtils]: 120: Hoare triple {13591#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13591#false} is VALID [2022-02-20 23:50:00,959 INFO L290 TraceCheckUtils]: 121: Hoare triple {13591#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {13591#false} is VALID [2022-02-20 23:50:00,960 INFO L134 CoverageAnalysis]: Checked inductivity of 996 backedges. 84 proven. 793 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-02-20 23:50:00,960 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:00,960 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1327242720] [2022-02-20 23:50:00,961 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1327242720] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:00,961 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1941111355] [2022-02-20 23:50:00,961 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:50:00,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:00,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:00,962 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:00,976 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-02-20 23:50:01,093 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:50:01,093 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:01,095 INFO L263 TraceCheckSpWp]: Trace formula consists of 420 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:50:01,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:01,111 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:02,355 INFO L290 TraceCheckUtils]: 0: Hoare triple {13590#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13590#true} is VALID [2022-02-20 23:50:02,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {13590#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,357 INFO L290 TraceCheckUtils]: 2: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,358 INFO L290 TraceCheckUtils]: 3: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,358 INFO L290 TraceCheckUtils]: 4: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,358 INFO L290 TraceCheckUtils]: 5: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,359 INFO L290 TraceCheckUtils]: 6: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,359 INFO L290 TraceCheckUtils]: 8: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,360 INFO L290 TraceCheckUtils]: 9: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,360 INFO L290 TraceCheckUtils]: 10: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,361 INFO L290 TraceCheckUtils]: 11: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,361 INFO L290 TraceCheckUtils]: 12: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,361 INFO L290 TraceCheckUtils]: 13: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,362 INFO L290 TraceCheckUtils]: 14: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,362 INFO L290 TraceCheckUtils]: 15: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,363 INFO L290 TraceCheckUtils]: 16: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,363 INFO L290 TraceCheckUtils]: 17: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,363 INFO L290 TraceCheckUtils]: 18: Hoare triple {13609#(and (<= |ULTIMATE.start_main_~i~1#1| 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,364 INFO L290 TraceCheckUtils]: 19: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,364 INFO L290 TraceCheckUtils]: 20: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,365 INFO L290 TraceCheckUtils]: 21: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,365 INFO L290 TraceCheckUtils]: 22: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,365 INFO L290 TraceCheckUtils]: 23: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,366 INFO L290 TraceCheckUtils]: 24: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,366 INFO L290 TraceCheckUtils]: 25: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,367 INFO L290 TraceCheckUtils]: 26: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,367 INFO L290 TraceCheckUtils]: 27: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,367 INFO L290 TraceCheckUtils]: 28: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,368 INFO L290 TraceCheckUtils]: 31: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,369 INFO L290 TraceCheckUtils]: 32: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,369 INFO L290 TraceCheckUtils]: 33: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,370 INFO L290 TraceCheckUtils]: 34: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,370 INFO L290 TraceCheckUtils]: 35: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,370 INFO L290 TraceCheckUtils]: 36: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,371 INFO L290 TraceCheckUtils]: 37: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,372 INFO L290 TraceCheckUtils]: 39: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,372 INFO L290 TraceCheckUtils]: 40: Hoare triple {13661#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,372 INFO L290 TraceCheckUtils]: 41: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,373 INFO L290 TraceCheckUtils]: 42: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,373 INFO L290 TraceCheckUtils]: 43: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,374 INFO L290 TraceCheckUtils]: 44: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,374 INFO L290 TraceCheckUtils]: 45: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,374 INFO L290 TraceCheckUtils]: 46: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,375 INFO L290 TraceCheckUtils]: 47: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,375 INFO L290 TraceCheckUtils]: 48: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,376 INFO L290 TraceCheckUtils]: 49: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,376 INFO L290 TraceCheckUtils]: 50: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,376 INFO L290 TraceCheckUtils]: 51: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,377 INFO L290 TraceCheckUtils]: 52: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,377 INFO L290 TraceCheckUtils]: 53: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,377 INFO L290 TraceCheckUtils]: 54: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,378 INFO L290 TraceCheckUtils]: 55: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,378 INFO L290 TraceCheckUtils]: 56: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,379 INFO L290 TraceCheckUtils]: 57: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,379 INFO L290 TraceCheckUtils]: 58: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,379 INFO L290 TraceCheckUtils]: 59: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,380 INFO L290 TraceCheckUtils]: 60: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,380 INFO L290 TraceCheckUtils]: 61: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,380 INFO L290 TraceCheckUtils]: 62: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,381 INFO L290 TraceCheckUtils]: 63: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} foo_#res#1 := foo_~i~0#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,381 INFO L290 TraceCheckUtils]: 64: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,382 INFO L290 TraceCheckUtils]: 65: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,382 INFO L290 TraceCheckUtils]: 66: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} havoc main_#t~ret3#1; {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,383 INFO L290 TraceCheckUtils]: 67: Hoare triple {13728#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {13810#(and (<= |ULTIMATE.start_main_~i~1#1| 3) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} is VALID [2022-02-20 23:50:02,383 INFO L290 TraceCheckUtils]: 68: Hoare triple {13810#(and (<= |ULTIMATE.start_main_~i~1#1| 3) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,384 INFO L290 TraceCheckUtils]: 69: Hoare triple {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,384 INFO L290 TraceCheckUtils]: 70: Hoare triple {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,384 INFO L290 TraceCheckUtils]: 71: Hoare triple {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,385 INFO L290 TraceCheckUtils]: 72: Hoare triple {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,385 INFO L290 TraceCheckUtils]: 73: Hoare triple {13814#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,386 INFO L290 TraceCheckUtils]: 74: Hoare triple {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,386 INFO L290 TraceCheckUtils]: 75: Hoare triple {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,387 INFO L290 TraceCheckUtils]: 76: Hoare triple {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,387 INFO L290 TraceCheckUtils]: 77: Hoare triple {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,388 INFO L290 TraceCheckUtils]: 78: Hoare triple {13830#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,388 INFO L290 TraceCheckUtils]: 79: Hoare triple {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,389 INFO L290 TraceCheckUtils]: 80: Hoare triple {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,389 INFO L290 TraceCheckUtils]: 81: Hoare triple {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,390 INFO L290 TraceCheckUtils]: 82: Hoare triple {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,390 INFO L290 TraceCheckUtils]: 83: Hoare triple {13846#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} is VALID [2022-02-20 23:50:02,391 INFO L290 TraceCheckUtils]: 84: Hoare triple {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} is VALID [2022-02-20 23:50:02,391 INFO L290 TraceCheckUtils]: 85: Hoare triple {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} is VALID [2022-02-20 23:50:02,391 INFO L290 TraceCheckUtils]: 86: Hoare triple {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} is VALID [2022-02-20 23:50:02,392 INFO L290 TraceCheckUtils]: 87: Hoare triple {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} is VALID [2022-02-20 23:50:02,392 INFO L290 TraceCheckUtils]: 88: Hoare triple {13862#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,393 INFO L290 TraceCheckUtils]: 89: Hoare triple {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,393 INFO L290 TraceCheckUtils]: 90: Hoare triple {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,394 INFO L290 TraceCheckUtils]: 91: Hoare triple {13878#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,394 INFO L290 TraceCheckUtils]: 92: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,395 INFO L290 TraceCheckUtils]: 93: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,395 INFO L290 TraceCheckUtils]: 94: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,396 INFO L290 TraceCheckUtils]: 95: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,396 INFO L290 TraceCheckUtils]: 96: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,397 INFO L290 TraceCheckUtils]: 97: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,397 INFO L290 TraceCheckUtils]: 98: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,397 INFO L290 TraceCheckUtils]: 99: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,398 INFO L290 TraceCheckUtils]: 100: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,398 INFO L290 TraceCheckUtils]: 101: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,399 INFO L290 TraceCheckUtils]: 102: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,399 INFO L290 TraceCheckUtils]: 103: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,400 INFO L290 TraceCheckUtils]: 104: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,400 INFO L290 TraceCheckUtils]: 105: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,401 INFO L290 TraceCheckUtils]: 106: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,401 INFO L290 TraceCheckUtils]: 107: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,402 INFO L290 TraceCheckUtils]: 108: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,402 INFO L290 TraceCheckUtils]: 109: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,403 INFO L290 TraceCheckUtils]: 110: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,403 INFO L290 TraceCheckUtils]: 111: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,403 INFO L290 TraceCheckUtils]: 112: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,404 INFO L290 TraceCheckUtils]: 113: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,404 INFO L290 TraceCheckUtils]: 114: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,405 INFO L290 TraceCheckUtils]: 115: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,405 INFO L290 TraceCheckUtils]: 116: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,406 INFO L290 TraceCheckUtils]: 117: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,406 INFO L290 TraceCheckUtils]: 118: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,407 INFO L290 TraceCheckUtils]: 119: Hoare triple {13888#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~size#1| 3) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13973#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:02,408 INFO L290 TraceCheckUtils]: 120: Hoare triple {13973#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13977#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:02,409 INFO L290 TraceCheckUtils]: 121: Hoare triple {13977#(and (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= (+ 5 |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {13591#false} is VALID [2022-02-20 23:50:02,409 INFO L134 CoverageAnalysis]: Checked inductivity of 996 backedges. 42 proven. 830 refuted. 0 times theorem prover too weak. 124 trivial. 0 not checked. [2022-02-20 23:50:02,409 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:02,884 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 34 treesize of output 30 [2022-02-20 23:50:04,303 INFO L290 TraceCheckUtils]: 121: Hoare triple {13981#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {13591#false} is VALID [2022-02-20 23:50:04,304 INFO L290 TraceCheckUtils]: 120: Hoare triple {13985#(or (and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|))) (not (<= 0 |ULTIMATE.start_foo_~i~0#1|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13981#(and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|)))} is VALID [2022-02-20 23:50:04,304 INFO L290 TraceCheckUtils]: 119: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13985#(or (and (<= 0 (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset|)) (<= (+ |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~b#1.offset| 1) (select |#length| |ULTIMATE.start_foo_~b#1.base|))) (not (<= 0 |ULTIMATE.start_foo_~i~0#1|)))} is VALID [2022-02-20 23:50:04,305 INFO L290 TraceCheckUtils]: 118: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,305 INFO L290 TraceCheckUtils]: 117: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,306 INFO L290 TraceCheckUtils]: 116: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,306 INFO L290 TraceCheckUtils]: 115: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,307 INFO L290 TraceCheckUtils]: 114: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,308 INFO L290 TraceCheckUtils]: 113: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,308 INFO L290 TraceCheckUtils]: 112: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,309 INFO L290 TraceCheckUtils]: 111: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,309 INFO L290 TraceCheckUtils]: 110: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,310 INFO L290 TraceCheckUtils]: 109: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,310 INFO L290 TraceCheckUtils]: 108: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,311 INFO L290 TraceCheckUtils]: 107: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,311 INFO L290 TraceCheckUtils]: 106: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,312 INFO L290 TraceCheckUtils]: 105: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,313 INFO L290 TraceCheckUtils]: 104: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,313 INFO L290 TraceCheckUtils]: 103: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,314 INFO L290 TraceCheckUtils]: 102: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,314 INFO L290 TraceCheckUtils]: 101: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,315 INFO L290 TraceCheckUtils]: 100: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,315 INFO L290 TraceCheckUtils]: 99: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,316 INFO L290 TraceCheckUtils]: 98: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,316 INFO L290 TraceCheckUtils]: 97: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,317 INFO L290 TraceCheckUtils]: 96: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,318 INFO L290 TraceCheckUtils]: 95: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,318 INFO L290 TraceCheckUtils]: 94: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,319 INFO L290 TraceCheckUtils]: 93: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,319 INFO L290 TraceCheckUtils]: 92: Hoare triple {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,320 INFO L290 TraceCheckUtils]: 91: Hoare triple {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {13989#(and (or (<= (+ 2 |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~b#1.offset|) (select |#length| |ULTIMATE.start_foo_~b#1.base|)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,320 INFO L290 TraceCheckUtils]: 90: Hoare triple {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,321 INFO L290 TraceCheckUtils]: 89: Hoare triple {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,321 INFO L290 TraceCheckUtils]: 88: Hoare triple {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14074#(and (or (< (+ |ULTIMATE.start_foo_~size#1| 1) 0) (<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,322 INFO L290 TraceCheckUtils]: 87: Hoare triple {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,323 INFO L290 TraceCheckUtils]: 86: Hoare triple {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,323 INFO L290 TraceCheckUtils]: 85: Hoare triple {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,324 INFO L290 TraceCheckUtils]: 84: Hoare triple {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,324 INFO L290 TraceCheckUtils]: 83: Hoare triple {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14084#(and (or (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,325 INFO L290 TraceCheckUtils]: 82: Hoare triple {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,325 INFO L290 TraceCheckUtils]: 81: Hoare triple {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,326 INFO L290 TraceCheckUtils]: 80: Hoare triple {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,326 INFO L290 TraceCheckUtils]: 79: Hoare triple {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,327 INFO L290 TraceCheckUtils]: 78: Hoare triple {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14100#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,327 INFO L290 TraceCheckUtils]: 77: Hoare triple {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,328 INFO L290 TraceCheckUtils]: 76: Hoare triple {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,328 INFO L290 TraceCheckUtils]: 75: Hoare triple {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,329 INFO L290 TraceCheckUtils]: 74: Hoare triple {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,329 INFO L290 TraceCheckUtils]: 73: Hoare triple {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14116#(and (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,330 INFO L290 TraceCheckUtils]: 72: Hoare triple {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,330 INFO L290 TraceCheckUtils]: 71: Hoare triple {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,331 INFO L290 TraceCheckUtils]: 70: Hoare triple {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,331 INFO L290 TraceCheckUtils]: 69: Hoare triple {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,332 INFO L290 TraceCheckUtils]: 68: Hoare triple {14148#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 1) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 3))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {14132#(and (or (<= 0 |ULTIMATE.start_foo_~b#1.offset|) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)) (or (<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3)) (< (+ |ULTIMATE.start_foo_~size#1| 1) 0)))} is VALID [2022-02-20 23:50:04,332 INFO L290 TraceCheckUtils]: 67: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {14148#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 1) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:04,333 INFO L290 TraceCheckUtils]: 66: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} havoc main_#t~ret3#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,333 INFO L290 TraceCheckUtils]: 65: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,334 INFO L290 TraceCheckUtils]: 64: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,334 INFO L290 TraceCheckUtils]: 63: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_#res#1 := foo_~i~0#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,335 INFO L290 TraceCheckUtils]: 62: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,335 INFO L290 TraceCheckUtils]: 61: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,336 INFO L290 TraceCheckUtils]: 60: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,336 INFO L290 TraceCheckUtils]: 59: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,337 INFO L290 TraceCheckUtils]: 58: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,337 INFO L290 TraceCheckUtils]: 57: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,338 INFO L290 TraceCheckUtils]: 56: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,338 INFO L290 TraceCheckUtils]: 55: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,339 INFO L290 TraceCheckUtils]: 54: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,339 INFO L290 TraceCheckUtils]: 53: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,340 INFO L290 TraceCheckUtils]: 52: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,340 INFO L290 TraceCheckUtils]: 51: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,341 INFO L290 TraceCheckUtils]: 50: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,341 INFO L290 TraceCheckUtils]: 49: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,342 INFO L290 TraceCheckUtils]: 48: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,342 INFO L290 TraceCheckUtils]: 47: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,343 INFO L290 TraceCheckUtils]: 46: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,343 INFO L290 TraceCheckUtils]: 45: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,344 INFO L290 TraceCheckUtils]: 44: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,344 INFO L290 TraceCheckUtils]: 43: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,345 INFO L290 TraceCheckUtils]: 42: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,345 INFO L290 TraceCheckUtils]: 41: Hoare triple {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,346 INFO L290 TraceCheckUtils]: 40: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {14152#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)))} is VALID [2022-02-20 23:50:04,346 INFO L290 TraceCheckUtils]: 39: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} havoc main_#t~ret3#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,347 INFO L290 TraceCheckUtils]: 38: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,347 INFO L290 TraceCheckUtils]: 37: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,348 INFO L290 TraceCheckUtils]: 36: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_#res#1 := foo_~i~0#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,348 INFO L290 TraceCheckUtils]: 35: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,348 INFO L290 TraceCheckUtils]: 34: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,349 INFO L290 TraceCheckUtils]: 33: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,349 INFO L290 TraceCheckUtils]: 32: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,350 INFO L290 TraceCheckUtils]: 31: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,350 INFO L290 TraceCheckUtils]: 30: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,351 INFO L290 TraceCheckUtils]: 28: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,351 INFO L290 TraceCheckUtils]: 27: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,352 INFO L290 TraceCheckUtils]: 26: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,352 INFO L290 TraceCheckUtils]: 25: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,354 INFO L290 TraceCheckUtils]: 21: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,355 INFO L290 TraceCheckUtils]: 19: Hoare triple {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,355 INFO L290 TraceCheckUtils]: 18: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {14234#(and (or (< (+ 3 |ULTIMATE.start_main_~i~1#1|) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:50:04,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} havoc main_#t~ret3#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,357 INFO L290 TraceCheckUtils]: 15: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,357 INFO L290 TraceCheckUtils]: 14: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} foo_#res#1 := foo_~i~0#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,359 INFO L290 TraceCheckUtils]: 11: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,359 INFO L290 TraceCheckUtils]: 10: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,360 INFO L290 TraceCheckUtils]: 9: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,360 INFO L290 TraceCheckUtils]: 8: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,361 INFO L290 TraceCheckUtils]: 6: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,362 INFO L290 TraceCheckUtils]: 5: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,362 INFO L290 TraceCheckUtils]: 4: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,363 INFO L290 TraceCheckUtils]: 3: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {13590#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {14301#(and (or (< (+ |ULTIMATE.start_main_~i~1#1| 4) 0) (<= 0 |ULTIMATE.start_main_~#mask~0#1.offset|)) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:50:04,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {13590#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13590#true} is VALID [2022-02-20 23:50:04,365 INFO L134 CoverageAnalysis]: Checked inductivity of 996 backedges. 42 proven. 830 refuted. 0 times theorem prover too weak. 124 trivial. 0 not checked. [2022-02-20 23:50:04,365 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1941111355] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:04,365 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:04,365 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 37 [2022-02-20 23:50:04,365 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1008288117] [2022-02-20 23:50:04,365 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:04,366 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 122 [2022-02-20 23:50:04,366 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:04,367 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 23:50:04,511 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:04,511 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-02-20 23:50:04,511 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:04,512 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-02-20 23:50:04,512 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=194, Invalid=1138, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 23:50:04,512 INFO L87 Difference]: Start difference. First operand 123 states and 130 transitions. Second operand has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 23:50:06,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:06,687 INFO L93 Difference]: Finished difference Result 167 states and 175 transitions. [2022-02-20 23:50:06,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 43 states. [2022-02-20 23:50:06,688 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 122 [2022-02-20 23:50:06,688 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:06,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 23:50:06,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 122 transitions. [2022-02-20 23:50:06,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 23:50:06,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 122 transitions. [2022-02-20 23:50:06,689 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 43 states and 122 transitions. [2022-02-20 23:50:06,793 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:06,795 INFO L225 Difference]: With dead ends: 167 [2022-02-20 23:50:06,795 INFO L226 Difference]: Without dead ends: 167 [2022-02-20 23:50:06,796 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 294 GetRequests, 220 SyntacticMatches, 0 SemanticMatches, 74 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1509 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=1268, Invalid=4432, Unknown=0, NotChecked=0, Total=5700 [2022-02-20 23:50:06,797 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 230 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 719 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 230 SdHoareTripleChecker+Valid, 127 SdHoareTripleChecker+Invalid, 785 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 719 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:06,797 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [230 Valid, 127 Invalid, 785 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 719 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:50:06,797 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states. [2022-02-20 23:50:06,799 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 155. [2022-02-20 23:50:06,799 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:06,799 INFO L82 GeneralOperation]: Start isEquivalent. First operand 167 states. Second operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 23:50:06,799 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 23:50:06,799 INFO L87 Difference]: Start difference. First operand 167 states. Second operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 23:50:06,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:06,801 INFO L93 Difference]: Finished difference Result 167 states and 175 transitions. [2022-02-20 23:50:06,801 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 175 transitions. [2022-02-20 23:50:06,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:06,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:06,802 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 167 states. [2022-02-20 23:50:06,802 INFO L87 Difference]: Start difference. First operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 167 states. [2022-02-20 23:50:06,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:06,803 INFO L93 Difference]: Finished difference Result 167 states and 175 transitions. [2022-02-20 23:50:06,804 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 175 transitions. [2022-02-20 23:50:06,804 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:06,804 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:06,804 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:06,804 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:06,805 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 154 states have (on average 1.0584415584415585) internal successors, (163), 154 states have internal predecessors, (163), 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 23:50:06,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 163 transitions. [2022-02-20 23:50:06,806 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 163 transitions. Word has length 122 [2022-02-20 23:50:06,807 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:06,807 INFO L470 AbstractCegarLoop]: Abstraction has 155 states and 163 transitions. [2022-02-20 23:50:06,807 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 37 states have (on average 5.648648648648648) internal successors, (209), 37 states have internal predecessors, (209), 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 23:50:06,807 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 163 transitions. [2022-02-20 23:50:06,809 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 150 [2022-02-20 23:50:06,809 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:06,809 INFO L514 BasicCegarLoop]: trace histogram [24, 24, 23, 23, 23, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1] [2022-02-20 23:50:06,832 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-02-20 23:50:07,022 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:07,023 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:07,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:07,023 INFO L85 PathProgramCache]: Analyzing trace with hash -1906495009, now seen corresponding path program 3 times [2022-02-20 23:50:07,023 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:07,023 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [881263492] [2022-02-20 23:50:07,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:07,023 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:07,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:07,186 INFO L290 TraceCheckUtils]: 0: Hoare triple {15089#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15089#true} is VALID [2022-02-20 23:50:07,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {15089#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,187 INFO L290 TraceCheckUtils]: 3: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,187 INFO L290 TraceCheckUtils]: 4: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,188 INFO L290 TraceCheckUtils]: 6: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,188 INFO L290 TraceCheckUtils]: 7: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,189 INFO L290 TraceCheckUtils]: 10: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,189 INFO L290 TraceCheckUtils]: 11: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,190 INFO L290 TraceCheckUtils]: 12: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,190 INFO L290 TraceCheckUtils]: 15: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:07,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {15091#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,192 INFO L290 TraceCheckUtils]: 19: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,193 INFO L290 TraceCheckUtils]: 22: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,193 INFO L290 TraceCheckUtils]: 23: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,193 INFO L290 TraceCheckUtils]: 24: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,194 INFO L290 TraceCheckUtils]: 25: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,194 INFO L290 TraceCheckUtils]: 26: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,194 INFO L290 TraceCheckUtils]: 27: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,195 INFO L290 TraceCheckUtils]: 28: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,195 INFO L290 TraceCheckUtils]: 29: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,195 INFO L290 TraceCheckUtils]: 30: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,196 INFO L290 TraceCheckUtils]: 31: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,196 INFO L290 TraceCheckUtils]: 32: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,196 INFO L290 TraceCheckUtils]: 33: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,197 INFO L290 TraceCheckUtils]: 34: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,197 INFO L290 TraceCheckUtils]: 35: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,197 INFO L290 TraceCheckUtils]: 36: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,198 INFO L290 TraceCheckUtils]: 37: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,198 INFO L290 TraceCheckUtils]: 38: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,198 INFO L290 TraceCheckUtils]: 39: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,199 INFO L290 TraceCheckUtils]: 40: Hoare triple {15092#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,199 INFO L290 TraceCheckUtils]: 41: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,200 INFO L290 TraceCheckUtils]: 42: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,200 INFO L290 TraceCheckUtils]: 43: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,200 INFO L290 TraceCheckUtils]: 44: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,201 INFO L290 TraceCheckUtils]: 45: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,201 INFO L290 TraceCheckUtils]: 46: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,201 INFO L290 TraceCheckUtils]: 47: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,202 INFO L290 TraceCheckUtils]: 48: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,202 INFO L290 TraceCheckUtils]: 49: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,202 INFO L290 TraceCheckUtils]: 50: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,203 INFO L290 TraceCheckUtils]: 51: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,204 INFO L290 TraceCheckUtils]: 54: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,204 INFO L290 TraceCheckUtils]: 55: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,204 INFO L290 TraceCheckUtils]: 56: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,205 INFO L290 TraceCheckUtils]: 57: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,205 INFO L290 TraceCheckUtils]: 58: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,205 INFO L290 TraceCheckUtils]: 59: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,206 INFO L290 TraceCheckUtils]: 60: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,206 INFO L290 TraceCheckUtils]: 61: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,207 INFO L290 TraceCheckUtils]: 62: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,207 INFO L290 TraceCheckUtils]: 63: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,207 INFO L290 TraceCheckUtils]: 64: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,208 INFO L290 TraceCheckUtils]: 65: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,208 INFO L290 TraceCheckUtils]: 66: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,208 INFO L290 TraceCheckUtils]: 67: Hoare triple {15093#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15094#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:07,209 INFO L290 TraceCheckUtils]: 68: Hoare triple {15094#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,209 INFO L290 TraceCheckUtils]: 69: Hoare triple {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,210 INFO L290 TraceCheckUtils]: 70: Hoare triple {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,210 INFO L290 TraceCheckUtils]: 71: Hoare triple {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,211 INFO L290 TraceCheckUtils]: 72: Hoare triple {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,211 INFO L290 TraceCheckUtils]: 73: Hoare triple {15095#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,212 INFO L290 TraceCheckUtils]: 74: Hoare triple {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,212 INFO L290 TraceCheckUtils]: 75: Hoare triple {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,213 INFO L290 TraceCheckUtils]: 76: Hoare triple {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,213 INFO L290 TraceCheckUtils]: 77: Hoare triple {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:07,214 INFO L290 TraceCheckUtils]: 78: Hoare triple {15096#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,214 INFO L290 TraceCheckUtils]: 79: Hoare triple {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,215 INFO L290 TraceCheckUtils]: 80: Hoare triple {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,215 INFO L290 TraceCheckUtils]: 81: Hoare triple {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,216 INFO L290 TraceCheckUtils]: 82: Hoare triple {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,216 INFO L290 TraceCheckUtils]: 83: Hoare triple {15097#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,217 INFO L290 TraceCheckUtils]: 84: Hoare triple {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,217 INFO L290 TraceCheckUtils]: 85: Hoare triple {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,218 INFO L290 TraceCheckUtils]: 86: Hoare triple {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,218 INFO L290 TraceCheckUtils]: 87: Hoare triple {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,219 INFO L290 TraceCheckUtils]: 88: Hoare triple {15098#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15099#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:07,219 INFO L290 TraceCheckUtils]: 89: Hoare triple {15099#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,219 INFO L290 TraceCheckUtils]: 90: Hoare triple {15090#false} foo_#res#1 := foo_~i~0#1; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 91: Hoare triple {15090#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 92: Hoare triple {15090#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 93: Hoare triple {15090#false} havoc main_#t~ret3#1; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 94: Hoare triple {15090#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 95: Hoare triple {15090#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 96: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 97: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 98: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,220 INFO L290 TraceCheckUtils]: 99: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 100: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 101: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 102: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 103: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 104: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 105: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 106: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,221 INFO L290 TraceCheckUtils]: 107: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 108: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 109: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 110: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 111: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 112: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 113: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 114: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 115: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,222 INFO L290 TraceCheckUtils]: 116: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 117: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 118: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 119: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 120: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 121: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 122: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 123: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 124: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,223 INFO L290 TraceCheckUtils]: 125: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 126: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 127: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 128: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 129: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 130: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 131: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 132: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,224 INFO L290 TraceCheckUtils]: 133: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 134: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 135: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 136: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 137: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 138: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 139: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 140: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 141: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,225 INFO L290 TraceCheckUtils]: 142: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 143: Hoare triple {15090#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 144: Hoare triple {15090#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 145: Hoare triple {15090#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 146: Hoare triple {15090#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 147: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:07,226 INFO L290 TraceCheckUtils]: 148: Hoare triple {15090#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {15090#false} is VALID [2022-02-20 23:50:07,227 INFO L134 CoverageAnalysis]: Checked inductivity of 1476 backedges. 865 proven. 297 refuted. 0 times theorem prover too weak. 314 trivial. 0 not checked. [2022-02-20 23:50:07,227 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:07,227 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [881263492] [2022-02-20 23:50:07,227 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [881263492] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:07,227 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1123536091] [2022-02-20 23:50:07,228 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:50:07,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:07,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:07,234 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:07,264 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-02-20 23:50:07,366 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-02-20 23:50:07,366 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:07,368 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:50:07,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:07,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 0: Hoare triple {15089#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {15089#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 3: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 4: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 5: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,150 INFO L290 TraceCheckUtils]: 6: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 7: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 8: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 9: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 10: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 11: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 12: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 13: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 14: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 15: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 16: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 17: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,151 INFO L290 TraceCheckUtils]: 18: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 19: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 20: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 21: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 22: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 24: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 25: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 26: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 27: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 28: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 29: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 32: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 33: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 34: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 35: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,152 INFO L290 TraceCheckUtils]: 36: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 37: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 38: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 40: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 41: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 42: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 43: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 45: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 46: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 47: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 48: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,153 INFO L290 TraceCheckUtils]: 49: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 50: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 51: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 52: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 53: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 54: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 55: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 56: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 57: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 58: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,154 INFO L290 TraceCheckUtils]: 59: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 60: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 61: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 62: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 63: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 64: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 65: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 66: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,155 INFO L290 TraceCheckUtils]: 67: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,156 INFO L290 TraceCheckUtils]: 68: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:08,156 INFO L290 TraceCheckUtils]: 69: Hoare triple {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:08,157 INFO L290 TraceCheckUtils]: 70: Hoare triple {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:08,157 INFO L290 TraceCheckUtils]: 71: Hoare triple {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:08,158 INFO L290 TraceCheckUtils]: 72: Hoare triple {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:08,158 INFO L290 TraceCheckUtils]: 73: Hoare triple {15307#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,159 INFO L290 TraceCheckUtils]: 74: Hoare triple {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,159 INFO L290 TraceCheckUtils]: 75: Hoare triple {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,160 INFO L290 TraceCheckUtils]: 76: Hoare triple {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,160 INFO L290 TraceCheckUtils]: 77: Hoare triple {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,160 INFO L290 TraceCheckUtils]: 78: Hoare triple {15323#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,161 INFO L290 TraceCheckUtils]: 79: Hoare triple {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,161 INFO L290 TraceCheckUtils]: 80: Hoare triple {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,162 INFO L290 TraceCheckUtils]: 81: Hoare triple {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,162 INFO L290 TraceCheckUtils]: 82: Hoare triple {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,163 INFO L290 TraceCheckUtils]: 83: Hoare triple {15339#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,163 INFO L290 TraceCheckUtils]: 84: Hoare triple {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,163 INFO L290 TraceCheckUtils]: 85: Hoare triple {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,164 INFO L290 TraceCheckUtils]: 86: Hoare triple {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,164 INFO L290 TraceCheckUtils]: 87: Hoare triple {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,165 INFO L290 TraceCheckUtils]: 88: Hoare triple {15355#(and (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15371#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,165 INFO L290 TraceCheckUtils]: 89: Hoare triple {15371#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_foo_~size#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,165 INFO L290 TraceCheckUtils]: 90: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} foo_#res#1 := foo_~i~0#1; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,166 INFO L290 TraceCheckUtils]: 91: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,166 INFO L290 TraceCheckUtils]: 92: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,166 INFO L290 TraceCheckUtils]: 93: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} havoc main_#t~ret3#1; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,167 INFO L290 TraceCheckUtils]: 94: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15391#(< |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:08,167 INFO L290 TraceCheckUtils]: 95: Hoare triple {15391#(< |ULTIMATE.start_main_~i~1#1| 4)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,168 INFO L290 TraceCheckUtils]: 96: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,168 INFO L290 TraceCheckUtils]: 97: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,168 INFO L290 TraceCheckUtils]: 98: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,169 INFO L290 TraceCheckUtils]: 99: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,169 INFO L290 TraceCheckUtils]: 100: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,169 INFO L290 TraceCheckUtils]: 101: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,169 INFO L290 TraceCheckUtils]: 102: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,170 INFO L290 TraceCheckUtils]: 103: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,170 INFO L290 TraceCheckUtils]: 104: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,170 INFO L290 TraceCheckUtils]: 105: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,171 INFO L290 TraceCheckUtils]: 106: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,171 INFO L290 TraceCheckUtils]: 107: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,171 INFO L290 TraceCheckUtils]: 108: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,172 INFO L290 TraceCheckUtils]: 109: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,172 INFO L290 TraceCheckUtils]: 110: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,172 INFO L290 TraceCheckUtils]: 111: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,173 INFO L290 TraceCheckUtils]: 112: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,173 INFO L290 TraceCheckUtils]: 113: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,173 INFO L290 TraceCheckUtils]: 114: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,173 INFO L290 TraceCheckUtils]: 115: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,174 INFO L290 TraceCheckUtils]: 116: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,174 INFO L290 TraceCheckUtils]: 117: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,174 INFO L290 TraceCheckUtils]: 118: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,175 INFO L290 TraceCheckUtils]: 119: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,175 INFO L290 TraceCheckUtils]: 120: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,175 INFO L290 TraceCheckUtils]: 121: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,176 INFO L290 TraceCheckUtils]: 122: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,176 INFO L290 TraceCheckUtils]: 123: Hoare triple {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,177 INFO L290 TraceCheckUtils]: 124: Hoare triple {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,177 INFO L290 TraceCheckUtils]: 125: Hoare triple {15477#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,177 INFO L290 TraceCheckUtils]: 126: Hoare triple {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,178 INFO L290 TraceCheckUtils]: 127: Hoare triple {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,178 INFO L290 TraceCheckUtils]: 128: Hoare triple {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,179 INFO L290 TraceCheckUtils]: 129: Hoare triple {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,179 INFO L290 TraceCheckUtils]: 130: Hoare triple {15487#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,179 INFO L290 TraceCheckUtils]: 131: Hoare triple {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,180 INFO L290 TraceCheckUtils]: 132: Hoare triple {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,180 INFO L290 TraceCheckUtils]: 133: Hoare triple {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,181 INFO L290 TraceCheckUtils]: 134: Hoare triple {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,181 INFO L290 TraceCheckUtils]: 135: Hoare triple {15503#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,182 INFO L290 TraceCheckUtils]: 136: Hoare triple {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,182 INFO L290 TraceCheckUtils]: 137: Hoare triple {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,182 INFO L290 TraceCheckUtils]: 138: Hoare triple {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,183 INFO L290 TraceCheckUtils]: 139: Hoare triple {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,183 INFO L290 TraceCheckUtils]: 140: Hoare triple {15519#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 3 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,184 INFO L290 TraceCheckUtils]: 141: Hoare triple {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,184 INFO L290 TraceCheckUtils]: 142: Hoare triple {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,184 INFO L290 TraceCheckUtils]: 143: Hoare triple {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,185 INFO L290 TraceCheckUtils]: 144: Hoare triple {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,185 INFO L290 TraceCheckUtils]: 145: Hoare triple {15535#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 4 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15551#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:08,186 INFO L290 TraceCheckUtils]: 146: Hoare triple {15551#(and (< |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:08,186 INFO L290 TraceCheckUtils]: 147: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:08,186 INFO L290 TraceCheckUtils]: 148: Hoare triple {15090#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {15090#false} is VALID [2022-02-20 23:50:08,187 INFO L134 CoverageAnalysis]: Checked inductivity of 1476 backedges. 936 proven. 249 refuted. 0 times theorem prover too weak. 291 trivial. 0 not checked. [2022-02-20 23:50:08,187 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:08,864 INFO L290 TraceCheckUtils]: 148: Hoare triple {15090#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {15090#false} is VALID [2022-02-20 23:50:08,865 INFO L290 TraceCheckUtils]: 147: Hoare triple {15090#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15090#false} is VALID [2022-02-20 23:50:08,865 INFO L290 TraceCheckUtils]: 146: Hoare triple {15567#(not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1)))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15090#false} is VALID [2022-02-20 23:50:08,865 INFO L290 TraceCheckUtils]: 145: Hoare triple {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15567#(not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1)))} is VALID [2022-02-20 23:50:08,866 INFO L290 TraceCheckUtils]: 144: Hoare triple {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:08,866 INFO L290 TraceCheckUtils]: 143: Hoare triple {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:08,866 INFO L290 TraceCheckUtils]: 142: Hoare triple {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:08,866 INFO L290 TraceCheckUtils]: 141: Hoare triple {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:08,867 INFO L290 TraceCheckUtils]: 140: Hoare triple {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15571#(< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:08,867 INFO L290 TraceCheckUtils]: 139: Hoare triple {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,867 INFO L290 TraceCheckUtils]: 138: Hoare triple {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,868 INFO L290 TraceCheckUtils]: 137: Hoare triple {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,868 INFO L290 TraceCheckUtils]: 136: Hoare triple {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,868 INFO L290 TraceCheckUtils]: 135: Hoare triple {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15587#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:08,869 INFO L290 TraceCheckUtils]: 134: Hoare triple {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,869 INFO L290 TraceCheckUtils]: 133: Hoare triple {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,869 INFO L290 TraceCheckUtils]: 132: Hoare triple {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,870 INFO L290 TraceCheckUtils]: 131: Hoare triple {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,870 INFO L290 TraceCheckUtils]: 130: Hoare triple {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15603#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:08,870 INFO L290 TraceCheckUtils]: 129: Hoare triple {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,871 INFO L290 TraceCheckUtils]: 128: Hoare triple {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,871 INFO L290 TraceCheckUtils]: 127: Hoare triple {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,871 INFO L290 TraceCheckUtils]: 126: Hoare triple {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,871 INFO L290 TraceCheckUtils]: 125: Hoare triple {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15619#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:08,872 INFO L290 TraceCheckUtils]: 124: Hoare triple {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:08,872 INFO L290 TraceCheckUtils]: 123: Hoare triple {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:08,872 INFO L290 TraceCheckUtils]: 122: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15635#(< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:08,873 INFO L290 TraceCheckUtils]: 121: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,873 INFO L290 TraceCheckUtils]: 120: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,873 INFO L290 TraceCheckUtils]: 119: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,873 INFO L290 TraceCheckUtils]: 118: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,874 INFO L290 TraceCheckUtils]: 117: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,874 INFO L290 TraceCheckUtils]: 116: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,874 INFO L290 TraceCheckUtils]: 115: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,874 INFO L290 TraceCheckUtils]: 114: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,875 INFO L290 TraceCheckUtils]: 113: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,875 INFO L290 TraceCheckUtils]: 112: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,875 INFO L290 TraceCheckUtils]: 111: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,875 INFO L290 TraceCheckUtils]: 110: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,876 INFO L290 TraceCheckUtils]: 109: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,876 INFO L290 TraceCheckUtils]: 108: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,876 INFO L290 TraceCheckUtils]: 107: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,876 INFO L290 TraceCheckUtils]: 106: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,876 INFO L290 TraceCheckUtils]: 105: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,877 INFO L290 TraceCheckUtils]: 104: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,877 INFO L290 TraceCheckUtils]: 103: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,877 INFO L290 TraceCheckUtils]: 102: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,877 INFO L290 TraceCheckUtils]: 101: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,878 INFO L290 TraceCheckUtils]: 100: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,878 INFO L290 TraceCheckUtils]: 99: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,878 INFO L290 TraceCheckUtils]: 98: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,878 INFO L290 TraceCheckUtils]: 97: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,879 INFO L290 TraceCheckUtils]: 96: Hoare triple {15395#(< |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,879 INFO L290 TraceCheckUtils]: 95: Hoare triple {15391#(< |ULTIMATE.start_main_~i~1#1| 4)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15395#(< |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:08,879 INFO L290 TraceCheckUtils]: 94: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15391#(< |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:08,880 INFO L290 TraceCheckUtils]: 93: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} havoc main_#t~ret3#1; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,880 INFO L290 TraceCheckUtils]: 92: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,880 INFO L290 TraceCheckUtils]: 91: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,880 INFO L290 TraceCheckUtils]: 90: Hoare triple {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} foo_#res#1 := foo_~i~0#1; {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,881 INFO L290 TraceCheckUtils]: 89: Hoare triple {15744#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1)))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15375#(< |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:08,881 INFO L290 TraceCheckUtils]: 88: Hoare triple {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15744#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1)))} is VALID [2022-02-20 23:50:08,881 INFO L290 TraceCheckUtils]: 87: Hoare triple {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,882 INFO L290 TraceCheckUtils]: 86: Hoare triple {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,882 INFO L290 TraceCheckUtils]: 85: Hoare triple {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,882 INFO L290 TraceCheckUtils]: 84: Hoare triple {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,882 INFO L290 TraceCheckUtils]: 83: Hoare triple {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15748#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,883 INFO L290 TraceCheckUtils]: 82: Hoare triple {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:08,883 INFO L290 TraceCheckUtils]: 81: Hoare triple {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:08,883 INFO L290 TraceCheckUtils]: 80: Hoare triple {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:08,884 INFO L290 TraceCheckUtils]: 79: Hoare triple {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:08,884 INFO L290 TraceCheckUtils]: 78: Hoare triple {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15764#(or (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|) (< |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:50:08,884 INFO L290 TraceCheckUtils]: 77: Hoare triple {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,885 INFO L290 TraceCheckUtils]: 76: Hoare triple {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,885 INFO L290 TraceCheckUtils]: 75: Hoare triple {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,885 INFO L290 TraceCheckUtils]: 74: Hoare triple {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,886 INFO L290 TraceCheckUtils]: 73: Hoare triple {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15780#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,886 INFO L290 TraceCheckUtils]: 72: Hoare triple {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,886 INFO L290 TraceCheckUtils]: 71: Hoare triple {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,887 INFO L290 TraceCheckUtils]: 70: Hoare triple {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,887 INFO L290 TraceCheckUtils]: 69: Hoare triple {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,887 INFO L290 TraceCheckUtils]: 68: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15796#(or (< |ULTIMATE.start_main_~i~1#1| 3) (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:08,887 INFO L290 TraceCheckUtils]: 67: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 66: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 65: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 64: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 63: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 62: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 61: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 60: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 59: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,888 INFO L290 TraceCheckUtils]: 58: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 57: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 56: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 55: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 54: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 53: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 52: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 51: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 50: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,889 INFO L290 TraceCheckUtils]: 49: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 48: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 47: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 46: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 45: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 44: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 43: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 42: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 41: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,890 INFO L290 TraceCheckUtils]: 40: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 38: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 37: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 36: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 35: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 34: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 33: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 32: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,891 INFO L290 TraceCheckUtils]: 31: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 30: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 29: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 28: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 27: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 26: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 25: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 24: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,892 INFO L290 TraceCheckUtils]: 22: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 21: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 20: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 19: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 18: Hoare triple {15089#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 17: Hoare triple {15089#true} havoc main_#t~ret3#1; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 16: Hoare triple {15089#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 15: Hoare triple {15089#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 14: Hoare triple {15089#true} foo_#res#1 := foo_~i~0#1; {15089#true} is VALID [2022-02-20 23:50:08,893 INFO L290 TraceCheckUtils]: 13: Hoare triple {15089#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 8: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {15089#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 6: Hoare triple {15089#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {15089#true} is VALID [2022-02-20 23:50:08,894 INFO L290 TraceCheckUtils]: 5: Hoare triple {15089#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {15089#true} is VALID [2022-02-20 23:50:08,895 INFO L290 TraceCheckUtils]: 4: Hoare triple {15089#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {15089#true} is VALID [2022-02-20 23:50:08,895 INFO L290 TraceCheckUtils]: 3: Hoare triple {15089#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {15089#true} is VALID [2022-02-20 23:50:08,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {15089#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,895 INFO L290 TraceCheckUtils]: 1: Hoare triple {15089#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {15089#true} is VALID [2022-02-20 23:50:08,895 INFO L290 TraceCheckUtils]: 0: Hoare triple {15089#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15089#true} is VALID [2022-02-20 23:50:08,896 INFO L134 CoverageAnalysis]: Checked inductivity of 1476 backedges. 807 proven. 378 refuted. 0 times theorem prover too weak. 291 trivial. 0 not checked. [2022-02-20 23:50:08,896 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1123536091] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:08,896 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:08,896 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 16, 16] total 36 [2022-02-20 23:50:08,896 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1338754644] [2022-02-20 23:50:08,896 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:08,897 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 149 [2022-02-20 23:50:08,898 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:08,898 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 23:50:08,998 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 23:50:08,999 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2022-02-20 23:50:08,999 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:08,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2022-02-20 23:50:09,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=210, Invalid=1050, Unknown=0, NotChecked=0, Total=1260 [2022-02-20 23:50:09,000 INFO L87 Difference]: Start difference. First operand 155 states and 163 transitions. Second operand has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 23:50:10,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:10,527 INFO L93 Difference]: Finished difference Result 161 states and 167 transitions. [2022-02-20 23:50:10,527 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2022-02-20 23:50:10,527 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 149 [2022-02-20 23:50:10,536 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:10,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 23:50:10,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 141 transitions. [2022-02-20 23:50:10,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 23:50:10,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 141 transitions. [2022-02-20 23:50:10,538 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 34 states and 141 transitions. [2022-02-20 23:50:10,621 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:10,622 INFO L225 Difference]: With dead ends: 161 [2022-02-20 23:50:10,622 INFO L226 Difference]: Without dead ends: 161 [2022-02-20 23:50:10,623 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 337 GetRequests, 274 SyntacticMatches, 0 SemanticMatches, 63 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 935 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=832, Invalid=3328, Unknown=0, NotChecked=0, Total=4160 [2022-02-20 23:50:10,623 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 392 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 846 mSolverCounterSat, 90 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 392 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 936 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 90 IncrementalHoareTripleChecker+Valid, 846 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:10,625 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [392 Valid, 106 Invalid, 936 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [90 Valid, 846 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:50:10,625 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-02-20 23:50:10,629 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 155. [2022-02-20 23:50:10,629 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:10,629 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 23:50:10,629 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 23:50:10,630 INFO L87 Difference]: Start difference. First operand 161 states. Second operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 23:50:10,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:10,631 INFO L93 Difference]: Finished difference Result 161 states and 167 transitions. [2022-02-20 23:50:10,631 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 167 transitions. [2022-02-20 23:50:10,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:10,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:10,632 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 161 states. [2022-02-20 23:50:10,632 INFO L87 Difference]: Start difference. First operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 161 states. [2022-02-20 23:50:10,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:10,634 INFO L93 Difference]: Finished difference Result 161 states and 167 transitions. [2022-02-20 23:50:10,634 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 167 transitions. [2022-02-20 23:50:10,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:10,634 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:10,634 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:10,634 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:10,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 154 states have (on average 1.0454545454545454) internal successors, (161), 154 states have internal predecessors, (161), 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 23:50:10,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 161 transitions. [2022-02-20 23:50:10,636 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 161 transitions. Word has length 149 [2022-02-20 23:50:10,636 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:10,636 INFO L470 AbstractCegarLoop]: Abstraction has 155 states and 161 transitions. [2022-02-20 23:50:10,637 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 36 states have (on average 5.277777777777778) internal successors, (190), 36 states have internal predecessors, (190), 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 23:50:10,637 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 161 transitions. [2022-02-20 23:50:10,637 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2022-02-20 23:50:10,637 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:10,638 INFO L514 BasicCegarLoop]: trace histogram [25, 25, 24, 24, 24, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1] [2022-02-20 23:50:10,657 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-02-20 23:50:10,853 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable25,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:10,853 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:10,853 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:10,854 INFO L85 PathProgramCache]: Analyzing trace with hash -874087090, now seen corresponding path program 4 times [2022-02-20 23:50:10,854 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:10,854 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1036552419] [2022-02-20 23:50:10,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:10,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:10,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:11,013 INFO L290 TraceCheckUtils]: 0: Hoare triple {16712#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16712#true} is VALID [2022-02-20 23:50:11,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {16712#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,014 INFO L290 TraceCheckUtils]: 3: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,014 INFO L290 TraceCheckUtils]: 4: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,015 INFO L290 TraceCheckUtils]: 5: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,015 INFO L290 TraceCheckUtils]: 6: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,016 INFO L290 TraceCheckUtils]: 10: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,017 INFO L290 TraceCheckUtils]: 11: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,019 INFO L290 TraceCheckUtils]: 17: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:11,019 INFO L290 TraceCheckUtils]: 18: Hoare triple {16714#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,020 INFO L290 TraceCheckUtils]: 20: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,020 INFO L290 TraceCheckUtils]: 21: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,021 INFO L290 TraceCheckUtils]: 24: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,021 INFO L290 TraceCheckUtils]: 25: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,021 INFO L290 TraceCheckUtils]: 26: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,022 INFO L290 TraceCheckUtils]: 28: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,022 INFO L290 TraceCheckUtils]: 29: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,022 INFO L290 TraceCheckUtils]: 30: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,023 INFO L290 TraceCheckUtils]: 32: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,023 INFO L290 TraceCheckUtils]: 33: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,024 INFO L290 TraceCheckUtils]: 36: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,024 INFO L290 TraceCheckUtils]: 37: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,025 INFO L290 TraceCheckUtils]: 38: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,025 INFO L290 TraceCheckUtils]: 39: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:11,026 INFO L290 TraceCheckUtils]: 40: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,026 INFO L290 TraceCheckUtils]: 41: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,026 INFO L290 TraceCheckUtils]: 42: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,026 INFO L290 TraceCheckUtils]: 43: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,027 INFO L290 TraceCheckUtils]: 44: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,027 INFO L290 TraceCheckUtils]: 45: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,027 INFO L290 TraceCheckUtils]: 46: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,027 INFO L290 TraceCheckUtils]: 47: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,028 INFO L290 TraceCheckUtils]: 48: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,028 INFO L290 TraceCheckUtils]: 49: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,028 INFO L290 TraceCheckUtils]: 50: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,029 INFO L290 TraceCheckUtils]: 51: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,029 INFO L290 TraceCheckUtils]: 52: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,029 INFO L290 TraceCheckUtils]: 53: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,029 INFO L290 TraceCheckUtils]: 54: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,030 INFO L290 TraceCheckUtils]: 55: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,030 INFO L290 TraceCheckUtils]: 56: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,030 INFO L290 TraceCheckUtils]: 57: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,031 INFO L290 TraceCheckUtils]: 58: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,031 INFO L290 TraceCheckUtils]: 59: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,031 INFO L290 TraceCheckUtils]: 60: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,032 INFO L290 TraceCheckUtils]: 61: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,032 INFO L290 TraceCheckUtils]: 62: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,032 INFO L290 TraceCheckUtils]: 63: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#res#1 := foo_~i~0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,032 INFO L290 TraceCheckUtils]: 64: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,033 INFO L290 TraceCheckUtils]: 65: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,033 INFO L290 TraceCheckUtils]: 66: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} havoc main_#t~ret3#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:11,033 INFO L290 TraceCheckUtils]: 67: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,034 INFO L290 TraceCheckUtils]: 68: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,034 INFO L290 TraceCheckUtils]: 69: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,034 INFO L290 TraceCheckUtils]: 70: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,035 INFO L290 TraceCheckUtils]: 71: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,035 INFO L290 TraceCheckUtils]: 72: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,035 INFO L290 TraceCheckUtils]: 73: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,035 INFO L290 TraceCheckUtils]: 74: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,036 INFO L290 TraceCheckUtils]: 75: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,036 INFO L290 TraceCheckUtils]: 76: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,036 INFO L290 TraceCheckUtils]: 77: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,036 INFO L290 TraceCheckUtils]: 78: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,037 INFO L290 TraceCheckUtils]: 79: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,037 INFO L290 TraceCheckUtils]: 80: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,037 INFO L290 TraceCheckUtils]: 81: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,038 INFO L290 TraceCheckUtils]: 82: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,038 INFO L290 TraceCheckUtils]: 83: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,038 INFO L290 TraceCheckUtils]: 84: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,038 INFO L290 TraceCheckUtils]: 85: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,039 INFO L290 TraceCheckUtils]: 86: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,039 INFO L290 TraceCheckUtils]: 87: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,039 INFO L290 TraceCheckUtils]: 88: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,039 INFO L290 TraceCheckUtils]: 89: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,040 INFO L290 TraceCheckUtils]: 90: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,040 INFO L290 TraceCheckUtils]: 91: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,040 INFO L290 TraceCheckUtils]: 92: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,040 INFO L290 TraceCheckUtils]: 93: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,041 INFO L290 TraceCheckUtils]: 94: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,041 INFO L290 TraceCheckUtils]: 95: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#res#1 := foo_~i~0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,041 INFO L290 TraceCheckUtils]: 96: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,042 INFO L290 TraceCheckUtils]: 97: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,042 INFO L290 TraceCheckUtils]: 98: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} havoc main_#t~ret3#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:11,042 INFO L290 TraceCheckUtils]: 99: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:11,043 INFO L290 TraceCheckUtils]: 100: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,043 INFO L290 TraceCheckUtils]: 101: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,043 INFO L290 TraceCheckUtils]: 102: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,043 INFO L290 TraceCheckUtils]: 103: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,044 INFO L290 TraceCheckUtils]: 104: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,044 INFO L290 TraceCheckUtils]: 105: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,044 INFO L290 TraceCheckUtils]: 106: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,045 INFO L290 TraceCheckUtils]: 107: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,045 INFO L290 TraceCheckUtils]: 108: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,045 INFO L290 TraceCheckUtils]: 109: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,045 INFO L290 TraceCheckUtils]: 110: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,046 INFO L290 TraceCheckUtils]: 111: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,046 INFO L290 TraceCheckUtils]: 112: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,046 INFO L290 TraceCheckUtils]: 113: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,046 INFO L290 TraceCheckUtils]: 114: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,047 INFO L290 TraceCheckUtils]: 115: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,047 INFO L290 TraceCheckUtils]: 116: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,047 INFO L290 TraceCheckUtils]: 117: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,048 INFO L290 TraceCheckUtils]: 118: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,048 INFO L290 TraceCheckUtils]: 119: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,048 INFO L290 TraceCheckUtils]: 120: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,048 INFO L290 TraceCheckUtils]: 121: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} is VALID [2022-02-20 23:50:11,049 INFO L290 TraceCheckUtils]: 122: Hoare triple {16719#(<= |ULTIMATE.start_foo_~size#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:11,049 INFO L290 TraceCheckUtils]: 123: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:11,049 INFO L290 TraceCheckUtils]: 124: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:11,050 INFO L290 TraceCheckUtils]: 125: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:11,050 INFO L290 TraceCheckUtils]: 126: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:11,050 INFO L290 TraceCheckUtils]: 127: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:11,051 INFO L290 TraceCheckUtils]: 128: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:11,051 INFO L290 TraceCheckUtils]: 129: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:11,052 INFO L290 TraceCheckUtils]: 130: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:11,052 INFO L290 TraceCheckUtils]: 131: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:11,052 INFO L290 TraceCheckUtils]: 132: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:11,053 INFO L290 TraceCheckUtils]: 133: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:11,053 INFO L290 TraceCheckUtils]: 134: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:11,053 INFO L290 TraceCheckUtils]: 135: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:11,054 INFO L290 TraceCheckUtils]: 136: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:11,054 INFO L290 TraceCheckUtils]: 137: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:11,054 INFO L290 TraceCheckUtils]: 138: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:11,054 INFO L290 TraceCheckUtils]: 139: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:11,055 INFO L290 TraceCheckUtils]: 140: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,055 INFO L290 TraceCheckUtils]: 141: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,055 INFO L290 TraceCheckUtils]: 142: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,056 INFO L290 TraceCheckUtils]: 143: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,056 INFO L290 TraceCheckUtils]: 144: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,056 INFO L290 TraceCheckUtils]: 145: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,057 INFO L290 TraceCheckUtils]: 146: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,057 INFO L290 TraceCheckUtils]: 147: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,057 INFO L290 TraceCheckUtils]: 148: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,057 INFO L290 TraceCheckUtils]: 149: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,058 INFO L290 TraceCheckUtils]: 150: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16726#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:11,058 INFO L290 TraceCheckUtils]: 151: Hoare triple {16726#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16713#false} is VALID [2022-02-20 23:50:11,058 INFO L290 TraceCheckUtils]: 152: Hoare triple {16713#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16713#false} is VALID [2022-02-20 23:50:11,058 INFO L290 TraceCheckUtils]: 153: Hoare triple {16713#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {16713#false} is VALID [2022-02-20 23:50:11,059 INFO L134 CoverageAnalysis]: Checked inductivity of 1598 backedges. 118 proven. 1328 refuted. 0 times theorem prover too weak. 152 trivial. 0 not checked. [2022-02-20 23:50:11,059 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:11,059 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1036552419] [2022-02-20 23:50:11,060 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1036552419] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:11,060 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1367844575] [2022-02-20 23:50:11,060 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:50:11,060 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:11,060 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:11,076 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:11,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-02-20 23:50:11,286 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:50:11,286 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:11,288 INFO L263 TraceCheckSpWp]: Trace formula consists of 523 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:50:11,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:11,314 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:12,216 INFO L290 TraceCheckUtils]: 0: Hoare triple {16712#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16712#true} is VALID [2022-02-20 23:50:12,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {16712#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,217 INFO L290 TraceCheckUtils]: 3: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,217 INFO L290 TraceCheckUtils]: 4: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,218 INFO L290 TraceCheckUtils]: 7: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,218 INFO L290 TraceCheckUtils]: 8: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,219 INFO L290 TraceCheckUtils]: 10: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,219 INFO L290 TraceCheckUtils]: 11: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,219 INFO L290 TraceCheckUtils]: 12: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,220 INFO L290 TraceCheckUtils]: 14: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,220 INFO L290 TraceCheckUtils]: 15: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:12,221 INFO L290 TraceCheckUtils]: 18: Hoare triple {16733#(<= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,221 INFO L290 TraceCheckUtils]: 19: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,222 INFO L290 TraceCheckUtils]: 20: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,222 INFO L290 TraceCheckUtils]: 21: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,222 INFO L290 TraceCheckUtils]: 22: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,223 INFO L290 TraceCheckUtils]: 25: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,223 INFO L290 TraceCheckUtils]: 26: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,224 INFO L290 TraceCheckUtils]: 28: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,224 INFO L290 TraceCheckUtils]: 29: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,225 INFO L290 TraceCheckUtils]: 30: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,225 INFO L290 TraceCheckUtils]: 31: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,225 INFO L290 TraceCheckUtils]: 32: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,225 INFO L290 TraceCheckUtils]: 33: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,226 INFO L290 TraceCheckUtils]: 34: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,226 INFO L290 TraceCheckUtils]: 35: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,226 INFO L290 TraceCheckUtils]: 36: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} foo_#res#1 := foo_~i~0#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,231 INFO L290 TraceCheckUtils]: 37: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,231 INFO L290 TraceCheckUtils]: 38: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,232 INFO L290 TraceCheckUtils]: 39: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~ret3#1; {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:50:12,232 INFO L290 TraceCheckUtils]: 40: Hoare triple {16715#(<= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,232 INFO L290 TraceCheckUtils]: 41: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,233 INFO L290 TraceCheckUtils]: 42: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,233 INFO L290 TraceCheckUtils]: 43: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,233 INFO L290 TraceCheckUtils]: 44: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,233 INFO L290 TraceCheckUtils]: 45: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,234 INFO L290 TraceCheckUtils]: 46: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,234 INFO L290 TraceCheckUtils]: 47: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,234 INFO L290 TraceCheckUtils]: 48: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,235 INFO L290 TraceCheckUtils]: 49: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,235 INFO L290 TraceCheckUtils]: 50: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,235 INFO L290 TraceCheckUtils]: 51: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,235 INFO L290 TraceCheckUtils]: 52: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,236 INFO L290 TraceCheckUtils]: 53: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,236 INFO L290 TraceCheckUtils]: 54: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,236 INFO L290 TraceCheckUtils]: 55: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,237 INFO L290 TraceCheckUtils]: 56: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,237 INFO L290 TraceCheckUtils]: 57: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,237 INFO L290 TraceCheckUtils]: 58: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,237 INFO L290 TraceCheckUtils]: 59: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,238 INFO L290 TraceCheckUtils]: 60: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,238 INFO L290 TraceCheckUtils]: 61: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,238 INFO L290 TraceCheckUtils]: 62: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,238 INFO L290 TraceCheckUtils]: 63: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} foo_#res#1 := foo_~i~0#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,239 INFO L290 TraceCheckUtils]: 64: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,239 INFO L290 TraceCheckUtils]: 65: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,239 INFO L290 TraceCheckUtils]: 66: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} havoc main_#t~ret3#1; {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} is VALID [2022-02-20 23:50:12,240 INFO L290 TraceCheckUtils]: 67: Hoare triple {16716#(<= |ULTIMATE.start_main_~i~1#1| 2)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,240 INFO L290 TraceCheckUtils]: 68: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,240 INFO L290 TraceCheckUtils]: 69: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,241 INFO L290 TraceCheckUtils]: 70: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,241 INFO L290 TraceCheckUtils]: 71: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,241 INFO L290 TraceCheckUtils]: 72: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,241 INFO L290 TraceCheckUtils]: 73: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,242 INFO L290 TraceCheckUtils]: 74: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,242 INFO L290 TraceCheckUtils]: 75: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,242 INFO L290 TraceCheckUtils]: 76: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,243 INFO L290 TraceCheckUtils]: 77: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,243 INFO L290 TraceCheckUtils]: 78: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,243 INFO L290 TraceCheckUtils]: 79: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,243 INFO L290 TraceCheckUtils]: 80: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,244 INFO L290 TraceCheckUtils]: 81: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,244 INFO L290 TraceCheckUtils]: 82: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,244 INFO L290 TraceCheckUtils]: 83: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,245 INFO L290 TraceCheckUtils]: 84: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,245 INFO L290 TraceCheckUtils]: 85: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,245 INFO L290 TraceCheckUtils]: 86: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,245 INFO L290 TraceCheckUtils]: 87: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,246 INFO L290 TraceCheckUtils]: 88: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,246 INFO L290 TraceCheckUtils]: 89: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,246 INFO L290 TraceCheckUtils]: 90: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,246 INFO L290 TraceCheckUtils]: 91: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,247 INFO L290 TraceCheckUtils]: 92: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,247 INFO L290 TraceCheckUtils]: 93: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,247 INFO L290 TraceCheckUtils]: 94: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,248 INFO L290 TraceCheckUtils]: 95: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} foo_#res#1 := foo_~i~0#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,248 INFO L290 TraceCheckUtils]: 96: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,248 INFO L290 TraceCheckUtils]: 97: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,248 INFO L290 TraceCheckUtils]: 98: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} havoc main_#t~ret3#1; {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} is VALID [2022-02-20 23:50:12,249 INFO L290 TraceCheckUtils]: 99: Hoare triple {16717#(<= |ULTIMATE.start_main_~i~1#1| 3)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,249 INFO L290 TraceCheckUtils]: 100: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,250 INFO L290 TraceCheckUtils]: 101: Hoare triple {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,250 INFO L290 TraceCheckUtils]: 102: Hoare triple {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,250 INFO L290 TraceCheckUtils]: 103: Hoare triple {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,251 INFO L290 TraceCheckUtils]: 104: Hoare triple {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,251 INFO L290 TraceCheckUtils]: 105: Hoare triple {17031#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,251 INFO L290 TraceCheckUtils]: 106: Hoare triple {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,252 INFO L290 TraceCheckUtils]: 107: Hoare triple {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,252 INFO L290 TraceCheckUtils]: 108: Hoare triple {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,253 INFO L290 TraceCheckUtils]: 109: Hoare triple {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,253 INFO L290 TraceCheckUtils]: 110: Hoare triple {17047#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,253 INFO L290 TraceCheckUtils]: 111: Hoare triple {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,257 INFO L290 TraceCheckUtils]: 112: Hoare triple {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,258 INFO L290 TraceCheckUtils]: 113: Hoare triple {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,258 INFO L290 TraceCheckUtils]: 114: Hoare triple {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,259 INFO L290 TraceCheckUtils]: 115: Hoare triple {17063#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,259 INFO L290 TraceCheckUtils]: 116: Hoare triple {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,259 INFO L290 TraceCheckUtils]: 117: Hoare triple {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,260 INFO L290 TraceCheckUtils]: 118: Hoare triple {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,260 INFO L290 TraceCheckUtils]: 119: Hoare triple {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,261 INFO L290 TraceCheckUtils]: 120: Hoare triple {17079#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,261 INFO L290 TraceCheckUtils]: 121: Hoare triple {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,261 INFO L290 TraceCheckUtils]: 122: Hoare triple {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,262 INFO L290 TraceCheckUtils]: 123: Hoare triple {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,262 INFO L290 TraceCheckUtils]: 124: Hoare triple {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,265 INFO L290 TraceCheckUtils]: 125: Hoare triple {17095#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,265 INFO L290 TraceCheckUtils]: 126: Hoare triple {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,265 INFO L290 TraceCheckUtils]: 127: Hoare triple {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,266 INFO L290 TraceCheckUtils]: 128: Hoare triple {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,266 INFO L290 TraceCheckUtils]: 129: Hoare triple {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,267 INFO L290 TraceCheckUtils]: 130: Hoare triple {17111#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,267 INFO L290 TraceCheckUtils]: 131: Hoare triple {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,267 INFO L290 TraceCheckUtils]: 132: Hoare triple {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,268 INFO L290 TraceCheckUtils]: 133: Hoare triple {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,283 INFO L290 TraceCheckUtils]: 134: Hoare triple {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,284 INFO L290 TraceCheckUtils]: 135: Hoare triple {17127#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,284 INFO L290 TraceCheckUtils]: 136: Hoare triple {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,285 INFO L290 TraceCheckUtils]: 137: Hoare triple {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,285 INFO L290 TraceCheckUtils]: 138: Hoare triple {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,286 INFO L290 TraceCheckUtils]: 139: Hoare triple {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,286 INFO L290 TraceCheckUtils]: 140: Hoare triple {17143#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,286 INFO L290 TraceCheckUtils]: 141: Hoare triple {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,287 INFO L290 TraceCheckUtils]: 142: Hoare triple {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,287 INFO L290 TraceCheckUtils]: 143: Hoare triple {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,288 INFO L290 TraceCheckUtils]: 144: Hoare triple {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,288 INFO L290 TraceCheckUtils]: 145: Hoare triple {17159#(and (<= 8 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,288 INFO L290 TraceCheckUtils]: 146: Hoare triple {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,289 INFO L290 TraceCheckUtils]: 147: Hoare triple {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,289 INFO L290 TraceCheckUtils]: 148: Hoare triple {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,290 INFO L290 TraceCheckUtils]: 149: Hoare triple {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,290 INFO L290 TraceCheckUtils]: 150: Hoare triple {17175#(and (<= |ULTIMATE.start_foo_~size#1| 4) (<= 9 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17191#(and (<= 10 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} is VALID [2022-02-20 23:50:12,290 INFO L290 TraceCheckUtils]: 151: Hoare triple {17191#(and (<= 10 |ULTIMATE.start_foo_~i~0#1|) (<= |ULTIMATE.start_foo_~size#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16713#false} is VALID [2022-02-20 23:50:12,290 INFO L290 TraceCheckUtils]: 152: Hoare triple {16713#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16713#false} is VALID [2022-02-20 23:50:12,291 INFO L290 TraceCheckUtils]: 153: Hoare triple {16713#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {16713#false} is VALID [2022-02-20 23:50:12,291 INFO L134 CoverageAnalysis]: Checked inductivity of 1598 backedges. 283 proven. 1201 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-02-20 23:50:12,292 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:12,914 INFO L290 TraceCheckUtils]: 153: Hoare triple {16713#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {16713#false} is VALID [2022-02-20 23:50:12,915 INFO L290 TraceCheckUtils]: 152: Hoare triple {16713#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16713#false} is VALID [2022-02-20 23:50:12,915 INFO L290 TraceCheckUtils]: 151: Hoare triple {16726#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16713#false} is VALID [2022-02-20 23:50:12,916 INFO L290 TraceCheckUtils]: 150: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16726#(<= (+ 2 |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,916 INFO L290 TraceCheckUtils]: 149: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,916 INFO L290 TraceCheckUtils]: 148: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,917 INFO L290 TraceCheckUtils]: 147: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,917 INFO L290 TraceCheckUtils]: 146: Hoare triple {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,917 INFO L290 TraceCheckUtils]: 145: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16725#(<= (+ |ULTIMATE.start_foo_~size#1| 1) |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,918 INFO L290 TraceCheckUtils]: 144: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,918 INFO L290 TraceCheckUtils]: 143: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,918 INFO L290 TraceCheckUtils]: 142: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,918 INFO L290 TraceCheckUtils]: 141: Hoare triple {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,919 INFO L290 TraceCheckUtils]: 140: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16724#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|)} is VALID [2022-02-20 23:50:12,919 INFO L290 TraceCheckUtils]: 139: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:12,919 INFO L290 TraceCheckUtils]: 138: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:12,920 INFO L290 TraceCheckUtils]: 137: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:12,920 INFO L290 TraceCheckUtils]: 136: Hoare triple {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:12,920 INFO L290 TraceCheckUtils]: 135: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16723#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:12,921 INFO L290 TraceCheckUtils]: 134: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:12,921 INFO L290 TraceCheckUtils]: 133: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:12,921 INFO L290 TraceCheckUtils]: 132: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:12,922 INFO L290 TraceCheckUtils]: 131: Hoare triple {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:12,922 INFO L290 TraceCheckUtils]: 130: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16722#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:12,922 INFO L290 TraceCheckUtils]: 129: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:12,923 INFO L290 TraceCheckUtils]: 128: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:12,923 INFO L290 TraceCheckUtils]: 127: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:12,923 INFO L290 TraceCheckUtils]: 126: Hoare triple {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:12,924 INFO L290 TraceCheckUtils]: 125: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16721#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:12,924 INFO L290 TraceCheckUtils]: 124: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:12,924 INFO L290 TraceCheckUtils]: 123: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:12,925 INFO L290 TraceCheckUtils]: 122: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:12,925 INFO L290 TraceCheckUtils]: 121: Hoare triple {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:12,925 INFO L290 TraceCheckUtils]: 120: Hoare triple {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16720#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:12,926 INFO L290 TraceCheckUtils]: 119: Hoare triple {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:12,926 INFO L290 TraceCheckUtils]: 118: Hoare triple {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:12,926 INFO L290 TraceCheckUtils]: 117: Hoare triple {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:12,927 INFO L290 TraceCheckUtils]: 116: Hoare triple {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:12,927 INFO L290 TraceCheckUtils]: 115: Hoare triple {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17300#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:12,928 INFO L290 TraceCheckUtils]: 114: Hoare triple {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:12,928 INFO L290 TraceCheckUtils]: 113: Hoare triple {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:12,928 INFO L290 TraceCheckUtils]: 112: Hoare triple {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:12,929 INFO L290 TraceCheckUtils]: 111: Hoare triple {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:12,929 INFO L290 TraceCheckUtils]: 110: Hoare triple {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17316#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:12,929 INFO L290 TraceCheckUtils]: 109: Hoare triple {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,930 INFO L290 TraceCheckUtils]: 108: Hoare triple {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,930 INFO L290 TraceCheckUtils]: 107: Hoare triple {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,930 INFO L290 TraceCheckUtils]: 106: Hoare triple {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,930 INFO L290 TraceCheckUtils]: 105: Hoare triple {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17332#(<= |ULTIMATE.start_foo_~size#1| (+ 7 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:12,931 INFO L290 TraceCheckUtils]: 104: Hoare triple {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:12,931 INFO L290 TraceCheckUtils]: 103: Hoare triple {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:12,931 INFO L290 TraceCheckUtils]: 102: Hoare triple {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:12,932 INFO L290 TraceCheckUtils]: 101: Hoare triple {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:12,932 INFO L290 TraceCheckUtils]: 100: Hoare triple {17364#(<= |ULTIMATE.start_main_~i~1#1| 8)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {17348#(<= |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:12,932 INFO L290 TraceCheckUtils]: 99: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {17364#(<= |ULTIMATE.start_main_~i~1#1| 8)} is VALID [2022-02-20 23:50:12,933 INFO L290 TraceCheckUtils]: 98: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} havoc main_#t~ret3#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,933 INFO L290 TraceCheckUtils]: 97: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,933 INFO L290 TraceCheckUtils]: 96: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,933 INFO L290 TraceCheckUtils]: 95: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#res#1 := foo_~i~0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,934 INFO L290 TraceCheckUtils]: 94: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,934 INFO L290 TraceCheckUtils]: 93: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,934 INFO L290 TraceCheckUtils]: 92: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,935 INFO L290 TraceCheckUtils]: 91: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,935 INFO L290 TraceCheckUtils]: 90: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,935 INFO L290 TraceCheckUtils]: 89: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,935 INFO L290 TraceCheckUtils]: 88: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,936 INFO L290 TraceCheckUtils]: 87: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,936 INFO L290 TraceCheckUtils]: 86: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,936 INFO L290 TraceCheckUtils]: 85: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,936 INFO L290 TraceCheckUtils]: 84: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,937 INFO L290 TraceCheckUtils]: 83: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,937 INFO L290 TraceCheckUtils]: 82: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,937 INFO L290 TraceCheckUtils]: 81: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,938 INFO L290 TraceCheckUtils]: 80: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,938 INFO L290 TraceCheckUtils]: 79: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,938 INFO L290 TraceCheckUtils]: 78: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,938 INFO L290 TraceCheckUtils]: 77: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,939 INFO L290 TraceCheckUtils]: 76: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,939 INFO L290 TraceCheckUtils]: 75: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,939 INFO L290 TraceCheckUtils]: 74: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,939 INFO L290 TraceCheckUtils]: 73: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,940 INFO L290 TraceCheckUtils]: 72: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,940 INFO L290 TraceCheckUtils]: 71: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,940 INFO L290 TraceCheckUtils]: 70: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,940 INFO L290 TraceCheckUtils]: 69: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,941 INFO L290 TraceCheckUtils]: 68: Hoare triple {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,941 INFO L290 TraceCheckUtils]: 67: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {17368#(<= |ULTIMATE.start_main_~i~1#1| 7)} is VALID [2022-02-20 23:50:12,941 INFO L290 TraceCheckUtils]: 66: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} havoc main_#t~ret3#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,942 INFO L290 TraceCheckUtils]: 65: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,942 INFO L290 TraceCheckUtils]: 64: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,942 INFO L290 TraceCheckUtils]: 63: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_#res#1 := foo_~i~0#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,943 INFO L290 TraceCheckUtils]: 62: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,943 INFO L290 TraceCheckUtils]: 61: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,943 INFO L290 TraceCheckUtils]: 60: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,943 INFO L290 TraceCheckUtils]: 59: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,944 INFO L290 TraceCheckUtils]: 58: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,944 INFO L290 TraceCheckUtils]: 57: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,944 INFO L290 TraceCheckUtils]: 56: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,944 INFO L290 TraceCheckUtils]: 55: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,945 INFO L290 TraceCheckUtils]: 53: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,945 INFO L290 TraceCheckUtils]: 52: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,946 INFO L290 TraceCheckUtils]: 51: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,946 INFO L290 TraceCheckUtils]: 50: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,946 INFO L290 TraceCheckUtils]: 49: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,946 INFO L290 TraceCheckUtils]: 48: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,947 INFO L290 TraceCheckUtils]: 47: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,947 INFO L290 TraceCheckUtils]: 46: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,947 INFO L290 TraceCheckUtils]: 45: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,947 INFO L290 TraceCheckUtils]: 44: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,948 INFO L290 TraceCheckUtils]: 43: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,948 INFO L290 TraceCheckUtils]: 42: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,948 INFO L290 TraceCheckUtils]: 41: Hoare triple {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,949 INFO L290 TraceCheckUtils]: 40: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {17465#(<= |ULTIMATE.start_main_~i~1#1| 6)} is VALID [2022-02-20 23:50:12,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} havoc main_#t~ret3#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,949 INFO L290 TraceCheckUtils]: 38: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,949 INFO L290 TraceCheckUtils]: 37: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,950 INFO L290 TraceCheckUtils]: 36: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_#res#1 := foo_~i~0#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,950 INFO L290 TraceCheckUtils]: 35: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,950 INFO L290 TraceCheckUtils]: 34: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,951 INFO L290 TraceCheckUtils]: 33: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,951 INFO L290 TraceCheckUtils]: 32: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,951 INFO L290 TraceCheckUtils]: 31: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,951 INFO L290 TraceCheckUtils]: 30: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,952 INFO L290 TraceCheckUtils]: 29: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,952 INFO L290 TraceCheckUtils]: 28: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,952 INFO L290 TraceCheckUtils]: 27: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,952 INFO L290 TraceCheckUtils]: 26: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,953 INFO L290 TraceCheckUtils]: 25: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,953 INFO L290 TraceCheckUtils]: 24: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,953 INFO L290 TraceCheckUtils]: 23: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,954 INFO L290 TraceCheckUtils]: 20: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,954 INFO L290 TraceCheckUtils]: 19: Hoare triple {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,955 INFO L290 TraceCheckUtils]: 18: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {17547#(<= |ULTIMATE.start_main_~i~1#1| 5)} is VALID [2022-02-20 23:50:12,955 INFO L290 TraceCheckUtils]: 17: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} havoc main_#t~ret3#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,955 INFO L290 TraceCheckUtils]: 16: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,956 INFO L290 TraceCheckUtils]: 15: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,956 INFO L290 TraceCheckUtils]: 14: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} foo_#res#1 := foo_~i~0#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,956 INFO L290 TraceCheckUtils]: 13: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,956 INFO L290 TraceCheckUtils]: 12: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,957 INFO L290 TraceCheckUtils]: 11: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,957 INFO L290 TraceCheckUtils]: 10: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,957 INFO L290 TraceCheckUtils]: 9: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,958 INFO L290 TraceCheckUtils]: 6: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,959 INFO L290 TraceCheckUtils]: 4: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,959 INFO L290 TraceCheckUtils]: 3: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,959 INFO L290 TraceCheckUtils]: 2: Hoare triple {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {16712#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {16718#(<= |ULTIMATE.start_main_~i~1#1| 4)} is VALID [2022-02-20 23:50:12,960 INFO L290 TraceCheckUtils]: 0: Hoare triple {16712#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16712#true} is VALID [2022-02-20 23:50:12,961 INFO L134 CoverageAnalysis]: Checked inductivity of 1598 backedges. 283 proven. 1201 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-02-20 23:50:12,961 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1367844575] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:12,961 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:12,961 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 18, 18] total 35 [2022-02-20 23:50:12,961 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [45658459] [2022-02-20 23:50:12,961 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:12,962 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 154 [2022-02-20 23:50:12,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:12,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 23:50:13,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:13,080 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-02-20 23:50:13,080 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:13,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-02-20 23:50:13,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=333, Invalid=857, Unknown=0, NotChecked=0, Total=1190 [2022-02-20 23:50:13,081 INFO L87 Difference]: Start difference. First operand 155 states and 161 transitions. Second operand has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 23:50:14,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:14,967 INFO L93 Difference]: Finished difference Result 401 states and 422 transitions. [2022-02-20 23:50:14,967 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 73 states. [2022-02-20 23:50:14,968 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 154 [2022-02-20 23:50:14,968 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:14,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 23:50:14,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 374 transitions. [2022-02-20 23:50:14,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 23:50:14,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 374 transitions. [2022-02-20 23:50:14,972 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 73 states and 374 transitions. [2022-02-20 23:50:15,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 374 edges. 374 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:15,240 INFO L225 Difference]: With dead ends: 401 [2022-02-20 23:50:15,240 INFO L226 Difference]: Without dead ends: 401 [2022-02-20 23:50:15,242 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 390 GetRequests, 287 SyntacticMatches, 1 SemanticMatches, 102 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4337 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=3118, Invalid=7594, Unknown=0, NotChecked=0, Total=10712 [2022-02-20 23:50:15,242 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 264 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 826 mSolverCounterSat, 90 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 264 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 916 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 90 IncrementalHoareTripleChecker+Valid, 826 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:15,242 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [264 Valid, 94 Invalid, 916 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [90 Valid, 826 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:50:15,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 401 states. [2022-02-20 23:50:15,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 401 to 390. [2022-02-20 23:50:15,246 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:15,247 INFO L82 GeneralOperation]: Start isEquivalent. First operand 401 states. Second operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 23:50:15,247 INFO L74 IsIncluded]: Start isIncluded. First operand 401 states. Second operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 23:50:15,247 INFO L87 Difference]: Start difference. First operand 401 states. Second operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 23:50:15,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:15,254 INFO L93 Difference]: Finished difference Result 401 states and 422 transitions. [2022-02-20 23:50:15,254 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 422 transitions. [2022-02-20 23:50:15,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:15,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:15,255 INFO L74 IsIncluded]: Start isIncluded. First operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 401 states. [2022-02-20 23:50:15,255 INFO L87 Difference]: Start difference. First operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 401 states. [2022-02-20 23:50:15,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:15,261 INFO L93 Difference]: Finished difference Result 401 states and 422 transitions. [2022-02-20 23:50:15,262 INFO L276 IsEmpty]: Start isEmpty. Operand 401 states and 422 transitions. [2022-02-20 23:50:15,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:15,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:15,262 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:15,262 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:15,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 390 states, 389 states have (on average 1.056555269922879) internal successors, (411), 389 states have internal predecessors, (411), 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 23:50:15,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 411 transitions. [2022-02-20 23:50:15,269 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 411 transitions. Word has length 154 [2022-02-20 23:50:15,269 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:15,269 INFO L470 AbstractCegarLoop]: Abstraction has 390 states and 411 transitions. [2022-02-20 23:50:15,269 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 35 states, 35 states have (on average 6.428571428571429) internal successors, (225), 35 states have internal predecessors, (225), 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 23:50:15,269 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 411 transitions. [2022-02-20 23:50:15,271 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 315 [2022-02-20 23:50:15,271 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:15,271 INFO L514 BasicCegarLoop]: trace histogram [50, 50, 49, 49, 49, 10, 9, 9, 9, 9, 9, 9, 1, 1, 1] [2022-02-20 23:50:15,303 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-02-20 23:50:15,505 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable26,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:15,505 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:15,506 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:15,506 INFO L85 PathProgramCache]: Analyzing trace with hash 747006490, now seen corresponding path program 5 times [2022-02-20 23:50:15,506 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:15,506 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1766059508] [2022-02-20 23:50:15,506 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:15,506 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:15,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 0: Hoare triple {19398#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {19398#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 2: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 3: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 4: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 5: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 6: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 7: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 8: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 9: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,830 INFO L290 TraceCheckUtils]: 10: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 11: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 12: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 13: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 14: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 15: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 16: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 17: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 18: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 19: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 20: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,831 INFO L290 TraceCheckUtils]: 21: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 22: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 23: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 24: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 25: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 26: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 27: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 28: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 29: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 30: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 31: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 32: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 33: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 34: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 35: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 36: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,832 INFO L290 TraceCheckUtils]: 37: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 38: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 39: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 40: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 41: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 42: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 43: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 44: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 45: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 46: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 47: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 48: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 49: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 50: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 51: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,833 INFO L290 TraceCheckUtils]: 52: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 53: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 54: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 55: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 56: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 57: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 58: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 59: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 60: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 61: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 62: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 63: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,834 INFO L290 TraceCheckUtils]: 64: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 65: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 66: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 67: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 68: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 69: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 70: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 71: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 72: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 73: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 74: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 75: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 76: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,835 INFO L290 TraceCheckUtils]: 77: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 78: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 79: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 80: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 81: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 82: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 83: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 84: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,836 INFO L290 TraceCheckUtils]: 85: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 86: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 87: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 88: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 89: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 90: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 91: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 92: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 93: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,837 INFO L290 TraceCheckUtils]: 94: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 95: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 96: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 97: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 98: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 99: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 100: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 101: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 102: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,838 INFO L290 TraceCheckUtils]: 103: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 104: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 105: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 106: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 107: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 108: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 109: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 110: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,839 INFO L290 TraceCheckUtils]: 111: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 112: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 113: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 114: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 115: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 116: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 117: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 118: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,840 INFO L290 TraceCheckUtils]: 119: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 120: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 121: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 122: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 123: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 124: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 125: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 126: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,841 INFO L290 TraceCheckUtils]: 127: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 128: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 129: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 130: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 131: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 132: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 133: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,842 INFO L290 TraceCheckUtils]: 134: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 135: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 136: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 137: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 138: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 139: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 140: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 141: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,843 INFO L290 TraceCheckUtils]: 142: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 143: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 144: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 145: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 146: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 147: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 148: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,844 INFO L290 TraceCheckUtils]: 149: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 150: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 151: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 152: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 153: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 154: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 155: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,845 INFO L290 TraceCheckUtils]: 156: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 157: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 158: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 159: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 160: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 161: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 162: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 163: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,846 INFO L290 TraceCheckUtils]: 164: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 165: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 166: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 167: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 168: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 169: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 170: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,847 INFO L290 TraceCheckUtils]: 171: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 172: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 173: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 174: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 175: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 176: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 177: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,848 INFO L290 TraceCheckUtils]: 178: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 179: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 180: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 181: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 182: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 183: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 184: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,849 INFO L290 TraceCheckUtils]: 185: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 186: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 187: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 188: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 189: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 190: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 191: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 192: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:15,850 INFO L290 TraceCheckUtils]: 193: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:15,851 INFO L290 TraceCheckUtils]: 194: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:15,851 INFO L290 TraceCheckUtils]: 195: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:15,852 INFO L290 TraceCheckUtils]: 196: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,852 INFO L290 TraceCheckUtils]: 197: Hoare triple {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,853 INFO L290 TraceCheckUtils]: 198: Hoare triple {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,853 INFO L290 TraceCheckUtils]: 199: Hoare triple {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,854 INFO L290 TraceCheckUtils]: 200: Hoare triple {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,854 INFO L290 TraceCheckUtils]: 201: Hoare triple {19400#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,855 INFO L290 TraceCheckUtils]: 202: Hoare triple {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,855 INFO L290 TraceCheckUtils]: 203: Hoare triple {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,856 INFO L290 TraceCheckUtils]: 204: Hoare triple {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,856 INFO L290 TraceCheckUtils]: 205: Hoare triple {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,857 INFO L290 TraceCheckUtils]: 206: Hoare triple {19401#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,857 INFO L290 TraceCheckUtils]: 207: Hoare triple {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,858 INFO L290 TraceCheckUtils]: 208: Hoare triple {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,858 INFO L290 TraceCheckUtils]: 209: Hoare triple {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,859 INFO L290 TraceCheckUtils]: 210: Hoare triple {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:15,859 INFO L290 TraceCheckUtils]: 211: Hoare triple {19402#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,860 INFO L290 TraceCheckUtils]: 212: Hoare triple {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,860 INFO L290 TraceCheckUtils]: 213: Hoare triple {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,860 INFO L290 TraceCheckUtils]: 214: Hoare triple {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,861 INFO L290 TraceCheckUtils]: 215: Hoare triple {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,861 INFO L290 TraceCheckUtils]: 216: Hoare triple {19403#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19404#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,862 INFO L290 TraceCheckUtils]: 217: Hoare triple {19404#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,862 INFO L290 TraceCheckUtils]: 218: Hoare triple {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,863 INFO L290 TraceCheckUtils]: 219: Hoare triple {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,863 INFO L290 TraceCheckUtils]: 220: Hoare triple {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,864 INFO L290 TraceCheckUtils]: 221: Hoare triple {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,864 INFO L290 TraceCheckUtils]: 222: Hoare triple {19405#(and (<= 3 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,864 INFO L290 TraceCheckUtils]: 223: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,865 INFO L290 TraceCheckUtils]: 224: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,865 INFO L290 TraceCheckUtils]: 225: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,865 INFO L290 TraceCheckUtils]: 226: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,866 INFO L290 TraceCheckUtils]: 227: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:15,866 INFO L290 TraceCheckUtils]: 228: Hoare triple {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,867 INFO L290 TraceCheckUtils]: 229: Hoare triple {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,867 INFO L290 TraceCheckUtils]: 230: Hoare triple {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,868 INFO L290 TraceCheckUtils]: 231: Hoare triple {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,868 INFO L290 TraceCheckUtils]: 232: Hoare triple {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:15,868 INFO L290 TraceCheckUtils]: 233: Hoare triple {19408#(and (<= 4 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,869 INFO L290 TraceCheckUtils]: 234: Hoare triple {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,869 INFO L290 TraceCheckUtils]: 235: Hoare triple {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,870 INFO L290 TraceCheckUtils]: 236: Hoare triple {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,870 INFO L290 TraceCheckUtils]: 237: Hoare triple {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,871 INFO L290 TraceCheckUtils]: 238: Hoare triple {19409#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:15,871 INFO L290 TraceCheckUtils]: 239: Hoare triple {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:15,872 INFO L290 TraceCheckUtils]: 240: Hoare triple {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:15,872 INFO L290 TraceCheckUtils]: 241: Hoare triple {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:15,873 INFO L290 TraceCheckUtils]: 242: Hoare triple {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:15,873 INFO L290 TraceCheckUtils]: 243: Hoare triple {19410#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,874 INFO L290 TraceCheckUtils]: 244: Hoare triple {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,874 INFO L290 TraceCheckUtils]: 245: Hoare triple {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,874 INFO L290 TraceCheckUtils]: 246: Hoare triple {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,875 INFO L290 TraceCheckUtils]: 247: Hoare triple {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,875 INFO L290 TraceCheckUtils]: 248: Hoare triple {19411#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,876 INFO L290 TraceCheckUtils]: 249: Hoare triple {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,876 INFO L290 TraceCheckUtils]: 250: Hoare triple {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,877 INFO L290 TraceCheckUtils]: 251: Hoare triple {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,877 INFO L290 TraceCheckUtils]: 252: Hoare triple {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,878 INFO L290 TraceCheckUtils]: 253: Hoare triple {19412#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19413#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:15,878 INFO L290 TraceCheckUtils]: 254: Hoare triple {19413#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,878 INFO L290 TraceCheckUtils]: 255: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:15,878 INFO L290 TraceCheckUtils]: 256: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:15,878 INFO L290 TraceCheckUtils]: 257: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 258: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 259: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 260: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 261: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 262: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 263: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 264: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,879 INFO L290 TraceCheckUtils]: 265: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 266: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 267: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 268: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 269: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 270: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 271: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 272: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,880 INFO L290 TraceCheckUtils]: 273: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 274: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 275: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 276: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 277: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 278: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 279: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 280: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 281: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,881 INFO L290 TraceCheckUtils]: 282: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 283: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 284: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 285: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 286: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 287: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 288: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 289: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 290: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,882 INFO L290 TraceCheckUtils]: 291: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 292: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 293: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 294: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 295: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 296: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 297: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 298: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,883 INFO L290 TraceCheckUtils]: 299: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,884 INFO L290 TraceCheckUtils]: 300: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,884 INFO L290 TraceCheckUtils]: 301: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 302: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 303: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 304: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 305: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 306: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 307: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 308: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 309: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:15,885 INFO L290 TraceCheckUtils]: 310: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:15,886 INFO L290 TraceCheckUtils]: 311: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:15,886 INFO L290 TraceCheckUtils]: 312: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:15,886 INFO L290 TraceCheckUtils]: 313: Hoare triple {19399#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {19399#false} is VALID [2022-02-20 23:50:15,888 INFO L134 CoverageAnalysis]: Checked inductivity of 6738 backedges. 3878 proven. 218 refuted. 0 times theorem prover too weak. 2642 trivial. 0 not checked. [2022-02-20 23:50:15,888 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:15,888 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1766059508] [2022-02-20 23:50:15,888 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1766059508] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:15,888 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [331232097] [2022-02-20 23:50:15,889 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:50:15,889 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:15,889 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:15,890 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:15,891 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-02-20 23:50:16,124 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2022-02-20 23:50:16,124 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:16,126 INFO L263 TraceCheckSpWp]: Trace formula consists of 498 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:50:16,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:16,171 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 0: Hoare triple {19398#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {19398#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 3: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 4: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 6: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 7: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 8: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 9: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 10: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 11: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 12: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 13: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:17,300 INFO L290 TraceCheckUtils]: 14: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 15: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 16: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 17: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 18: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 19: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19474#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,301 INFO L290 TraceCheckUtils]: 20: Hoare triple {19474#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19474#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,302 INFO L290 TraceCheckUtils]: 21: Hoare triple {19474#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,302 INFO L290 TraceCheckUtils]: 22: Hoare triple {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,302 INFO L290 TraceCheckUtils]: 23: Hoare triple {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,303 INFO L290 TraceCheckUtils]: 24: Hoare triple {19481#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,303 INFO L290 TraceCheckUtils]: 25: Hoare triple {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,304 INFO L290 TraceCheckUtils]: 26: Hoare triple {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,304 INFO L290 TraceCheckUtils]: 27: Hoare triple {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,304 INFO L290 TraceCheckUtils]: 28: Hoare triple {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,305 INFO L290 TraceCheckUtils]: 29: Hoare triple {19491#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19507#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:17,305 INFO L290 TraceCheckUtils]: 30: Hoare triple {19507#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,305 INFO L290 TraceCheckUtils]: 31: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,306 INFO L290 TraceCheckUtils]: 32: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,306 INFO L290 TraceCheckUtils]: 33: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,306 INFO L290 TraceCheckUtils]: 35: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,307 INFO L290 TraceCheckUtils]: 36: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,307 INFO L290 TraceCheckUtils]: 37: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,307 INFO L290 TraceCheckUtils]: 38: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,308 INFO L290 TraceCheckUtils]: 40: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,308 INFO L290 TraceCheckUtils]: 41: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,308 INFO L290 TraceCheckUtils]: 42: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,309 INFO L290 TraceCheckUtils]: 43: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,309 INFO L290 TraceCheckUtils]: 44: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,309 INFO L290 TraceCheckUtils]: 45: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,309 INFO L290 TraceCheckUtils]: 46: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,310 INFO L290 TraceCheckUtils]: 47: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,310 INFO L290 TraceCheckUtils]: 48: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,310 INFO L290 TraceCheckUtils]: 49: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,310 INFO L290 TraceCheckUtils]: 50: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,311 INFO L290 TraceCheckUtils]: 51: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,311 INFO L290 TraceCheckUtils]: 52: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,311 INFO L290 TraceCheckUtils]: 53: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,311 INFO L290 TraceCheckUtils]: 54: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,312 INFO L290 TraceCheckUtils]: 55: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,312 INFO L290 TraceCheckUtils]: 56: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,312 INFO L290 TraceCheckUtils]: 57: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,312 INFO L290 TraceCheckUtils]: 58: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,313 INFO L290 TraceCheckUtils]: 59: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,313 INFO L290 TraceCheckUtils]: 60: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,313 INFO L290 TraceCheckUtils]: 61: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,314 INFO L290 TraceCheckUtils]: 62: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,314 INFO L290 TraceCheckUtils]: 63: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,314 INFO L290 TraceCheckUtils]: 64: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,314 INFO L290 TraceCheckUtils]: 65: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,315 INFO L290 TraceCheckUtils]: 66: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,315 INFO L290 TraceCheckUtils]: 67: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,315 INFO L290 TraceCheckUtils]: 68: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,316 INFO L290 TraceCheckUtils]: 69: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,316 INFO L290 TraceCheckUtils]: 70: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,316 INFO L290 TraceCheckUtils]: 71: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,317 INFO L290 TraceCheckUtils]: 72: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,317 INFO L290 TraceCheckUtils]: 73: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,317 INFO L290 TraceCheckUtils]: 74: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,317 INFO L290 TraceCheckUtils]: 75: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,318 INFO L290 TraceCheckUtils]: 76: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,318 INFO L290 TraceCheckUtils]: 77: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,318 INFO L290 TraceCheckUtils]: 78: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,319 INFO L290 TraceCheckUtils]: 79: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,319 INFO L290 TraceCheckUtils]: 80: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,319 INFO L290 TraceCheckUtils]: 81: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,319 INFO L290 TraceCheckUtils]: 82: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,320 INFO L290 TraceCheckUtils]: 83: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,320 INFO L290 TraceCheckUtils]: 84: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,320 INFO L290 TraceCheckUtils]: 85: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,321 INFO L290 TraceCheckUtils]: 86: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,321 INFO L290 TraceCheckUtils]: 87: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,321 INFO L290 TraceCheckUtils]: 88: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,321 INFO L290 TraceCheckUtils]: 89: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,322 INFO L290 TraceCheckUtils]: 90: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,322 INFO L290 TraceCheckUtils]: 91: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,322 INFO L290 TraceCheckUtils]: 92: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,323 INFO L290 TraceCheckUtils]: 93: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,323 INFO L290 TraceCheckUtils]: 94: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,323 INFO L290 TraceCheckUtils]: 95: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,323 INFO L290 TraceCheckUtils]: 96: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,324 INFO L290 TraceCheckUtils]: 97: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,324 INFO L290 TraceCheckUtils]: 98: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,324 INFO L290 TraceCheckUtils]: 99: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:17,325 INFO L290 TraceCheckUtils]: 100: Hoare triple {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,325 INFO L290 TraceCheckUtils]: 101: Hoare triple {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,326 INFO L290 TraceCheckUtils]: 102: Hoare triple {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,326 INFO L290 TraceCheckUtils]: 103: Hoare triple {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,326 INFO L290 TraceCheckUtils]: 104: Hoare triple {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,327 INFO L290 TraceCheckUtils]: 105: Hoare triple {19723#(and (<= |ULTIMATE.start_foo_~i~0#1| 0) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,327 INFO L290 TraceCheckUtils]: 106: Hoare triple {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,328 INFO L290 TraceCheckUtils]: 107: Hoare triple {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,328 INFO L290 TraceCheckUtils]: 108: Hoare triple {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,328 INFO L290 TraceCheckUtils]: 109: Hoare triple {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,329 INFO L290 TraceCheckUtils]: 110: Hoare triple {19739#(and (<= |ULTIMATE.start_foo_~i~0#1| 1) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:17,329 INFO L290 TraceCheckUtils]: 111: Hoare triple {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:17,329 INFO L290 TraceCheckUtils]: 112: Hoare triple {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:17,330 INFO L290 TraceCheckUtils]: 113: Hoare triple {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:17,330 INFO L290 TraceCheckUtils]: 114: Hoare triple {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:17,331 INFO L290 TraceCheckUtils]: 115: Hoare triple {19755#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:17,331 INFO L290 TraceCheckUtils]: 116: Hoare triple {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:17,331 INFO L290 TraceCheckUtils]: 117: Hoare triple {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:17,332 INFO L290 TraceCheckUtils]: 118: Hoare triple {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:17,332 INFO L290 TraceCheckUtils]: 119: Hoare triple {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:17,333 INFO L290 TraceCheckUtils]: 120: Hoare triple {19771#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,333 INFO L290 TraceCheckUtils]: 121: Hoare triple {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,333 INFO L290 TraceCheckUtils]: 122: Hoare triple {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,334 INFO L290 TraceCheckUtils]: 123: Hoare triple {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,334 INFO L290 TraceCheckUtils]: 124: Hoare triple {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 125: Hoare triple {19787#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 4 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19803#(and (<= |ULTIMATE.start_foo_~i~0#1| 5) (<= 4 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 126: Hoare triple {19803#(and (<= |ULTIMATE.start_foo_~i~0#1| 5) (<= 4 |ULTIMATE.start_foo_~size#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 127: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 128: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 129: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:17,335 INFO L290 TraceCheckUtils]: 130: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 131: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 132: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 133: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 134: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 135: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 136: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 137: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 138: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,336 INFO L290 TraceCheckUtils]: 139: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 140: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 141: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 142: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 143: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 144: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 145: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 146: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 147: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,337 INFO L290 TraceCheckUtils]: 148: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 149: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 150: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 151: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 152: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 153: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 154: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 155: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 156: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,338 INFO L290 TraceCheckUtils]: 157: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 158: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 159: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 160: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 161: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 162: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 163: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 164: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 165: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,339 INFO L290 TraceCheckUtils]: 166: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 167: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 168: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 169: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 170: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 171: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 172: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 173: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 174: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,340 INFO L290 TraceCheckUtils]: 175: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 176: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 177: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 178: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 179: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 180: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 181: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 182: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 183: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,341 INFO L290 TraceCheckUtils]: 184: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 185: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 186: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 187: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 188: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 189: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 190: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 191: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 192: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:17,342 INFO L290 TraceCheckUtils]: 193: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 194: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 195: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 196: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 197: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 198: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 199: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 200: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 201: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,343 INFO L290 TraceCheckUtils]: 202: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,344 INFO L290 TraceCheckUtils]: 203: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,344 INFO L290 TraceCheckUtils]: 204: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 205: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 206: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 207: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 208: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 209: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,345 INFO L290 TraceCheckUtils]: 210: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 211: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 212: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 213: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 214: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 215: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 216: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 217: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,346 INFO L290 TraceCheckUtils]: 218: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 219: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 220: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 221: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 222: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 223: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 224: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 225: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 226: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:17,347 INFO L290 TraceCheckUtils]: 227: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 228: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 229: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 230: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 231: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 232: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 233: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 234: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 235: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,348 INFO L290 TraceCheckUtils]: 236: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 237: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 238: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 239: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 240: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 241: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 242: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 243: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 244: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,349 INFO L290 TraceCheckUtils]: 245: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 246: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 247: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 248: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 249: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 250: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 251: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 252: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 253: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,350 INFO L290 TraceCheckUtils]: 254: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 255: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 256: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 257: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 258: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 259: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 260: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 261: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 262: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,351 INFO L290 TraceCheckUtils]: 263: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 264: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 265: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 266: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 267: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 268: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 269: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 270: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 271: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,352 INFO L290 TraceCheckUtils]: 272: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 273: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 274: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 275: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 276: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 277: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 278: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 279: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 280: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,353 INFO L290 TraceCheckUtils]: 281: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 282: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 283: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 284: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 285: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 286: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 287: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 288: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,354 INFO L290 TraceCheckUtils]: 289: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 290: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 291: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 292: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 293: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 294: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 295: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 296: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 297: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,355 INFO L290 TraceCheckUtils]: 298: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 299: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 300: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 301: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 302: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 303: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 304: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 305: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 306: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,356 INFO L290 TraceCheckUtils]: 307: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 308: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 309: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 310: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 311: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 312: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:17,357 INFO L290 TraceCheckUtils]: 313: Hoare triple {19399#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {19399#false} is VALID [2022-02-20 23:50:17,359 INFO L134 CoverageAnalysis]: Checked inductivity of 6738 backedges. 3685 proven. 501 refuted. 0 times theorem prover too weak. 2552 trivial. 0 not checked. [2022-02-20 23:50:17,359 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:18,297 INFO L290 TraceCheckUtils]: 313: Hoare triple {19399#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 312: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 311: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 310: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 309: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 308: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 307: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 306: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 305: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 304: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 303: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 302: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 301: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 300: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 299: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 298: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,298 INFO L290 TraceCheckUtils]: 297: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 296: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 295: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 294: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 293: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 292: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 291: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 290: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 289: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 288: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 287: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 286: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,299 INFO L290 TraceCheckUtils]: 285: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 284: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 283: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 282: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 281: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 280: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 279: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 278: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 277: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 276: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 275: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 274: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 273: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 272: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 271: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,300 INFO L290 TraceCheckUtils]: 270: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 269: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 268: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 267: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 266: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 265: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 264: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 263: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 262: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 261: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 260: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 259: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 258: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 257: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 256: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 255: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 254: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 253: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,301 INFO L290 TraceCheckUtils]: 252: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 251: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 250: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 249: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 248: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 247: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 246: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 245: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 244: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 243: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 242: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 241: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 240: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 239: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,302 INFO L290 TraceCheckUtils]: 238: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 237: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 236: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 235: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 234: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 233: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 232: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 231: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 230: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 229: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 228: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 227: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 226: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 225: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:18,303 INFO L290 TraceCheckUtils]: 224: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 223: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 222: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 221: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 220: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 219: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 218: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 217: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 216: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 215: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 214: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 213: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,304 INFO L290 TraceCheckUtils]: 212: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,305 INFO L290 TraceCheckUtils]: 211: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,305 INFO L290 TraceCheckUtils]: 210: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,305 INFO L290 TraceCheckUtils]: 209: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,305 INFO L290 TraceCheckUtils]: 208: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 207: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 206: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 205: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 204: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 203: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 202: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 201: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 200: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,306 INFO L290 TraceCheckUtils]: 199: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 198: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 197: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 196: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 195: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 194: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 193: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 192: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 191: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:18,307 INFO L290 TraceCheckUtils]: 190: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,308 INFO L290 TraceCheckUtils]: 189: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,308 INFO L290 TraceCheckUtils]: 188: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,308 INFO L290 TraceCheckUtils]: 187: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,308 INFO L290 TraceCheckUtils]: 186: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,308 INFO L290 TraceCheckUtils]: 185: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 184: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 183: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 182: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 181: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 180: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 179: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,309 INFO L290 TraceCheckUtils]: 178: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 177: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 176: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 175: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 174: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 173: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 172: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 171: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 170: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,310 INFO L290 TraceCheckUtils]: 169: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 168: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 167: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 166: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 165: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 164: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 163: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 162: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 161: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:18,311 INFO L290 TraceCheckUtils]: 160: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 159: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 158: Hoare triple {19399#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 157: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 156: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 155: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 154: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 153: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 152: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,312 INFO L290 TraceCheckUtils]: 151: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 150: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 149: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 148: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 147: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 146: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 145: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 144: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 143: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 142: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,313 INFO L290 TraceCheckUtils]: 141: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 140: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 139: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 138: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 137: Hoare triple {19399#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 136: Hoare triple {19399#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 135: Hoare triple {19399#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 134: Hoare triple {19399#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 133: Hoare triple {19399#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,314 INFO L290 TraceCheckUtils]: 132: Hoare triple {19399#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19399#false} is VALID [2022-02-20 23:50:18,315 INFO L290 TraceCheckUtils]: 131: Hoare triple {19399#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19399#false} is VALID [2022-02-20 23:50:18,315 INFO L290 TraceCheckUtils]: 130: Hoare triple {19399#false} havoc main_#t~ret3#1; {19399#false} is VALID [2022-02-20 23:50:18,315 INFO L290 TraceCheckUtils]: 129: Hoare triple {19399#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19399#false} is VALID [2022-02-20 23:50:18,315 INFO L290 TraceCheckUtils]: 128: Hoare triple {19399#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19399#false} is VALID [2022-02-20 23:50:18,315 INFO L290 TraceCheckUtils]: 127: Hoare triple {19399#false} foo_#res#1 := foo_~i~0#1; {19399#false} is VALID [2022-02-20 23:50:18,316 INFO L290 TraceCheckUtils]: 126: Hoare triple {20929#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19399#false} is VALID [2022-02-20 23:50:18,316 INFO L290 TraceCheckUtils]: 125: Hoare triple {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {20929#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:50:18,316 INFO L290 TraceCheckUtils]: 124: Hoare triple {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,317 INFO L290 TraceCheckUtils]: 123: Hoare triple {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,317 INFO L290 TraceCheckUtils]: 122: Hoare triple {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,317 INFO L290 TraceCheckUtils]: 121: Hoare triple {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,318 INFO L290 TraceCheckUtils]: 120: Hoare triple {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {20933#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,318 INFO L290 TraceCheckUtils]: 119: Hoare triple {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,319 INFO L290 TraceCheckUtils]: 118: Hoare triple {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,319 INFO L290 TraceCheckUtils]: 117: Hoare triple {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,319 INFO L290 TraceCheckUtils]: 116: Hoare triple {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,320 INFO L290 TraceCheckUtils]: 115: Hoare triple {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {20949#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,320 INFO L290 TraceCheckUtils]: 114: Hoare triple {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,321 INFO L290 TraceCheckUtils]: 113: Hoare triple {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,321 INFO L290 TraceCheckUtils]: 112: Hoare triple {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,321 INFO L290 TraceCheckUtils]: 111: Hoare triple {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,322 INFO L290 TraceCheckUtils]: 110: Hoare triple {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {20965#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,322 INFO L290 TraceCheckUtils]: 109: Hoare triple {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,323 INFO L290 TraceCheckUtils]: 108: Hoare triple {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,323 INFO L290 TraceCheckUtils]: 107: Hoare triple {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,323 INFO L290 TraceCheckUtils]: 106: Hoare triple {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,324 INFO L290 TraceCheckUtils]: 105: Hoare triple {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {20981#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,324 INFO L290 TraceCheckUtils]: 104: Hoare triple {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,325 INFO L290 TraceCheckUtils]: 103: Hoare triple {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,325 INFO L290 TraceCheckUtils]: 102: Hoare triple {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,325 INFO L290 TraceCheckUtils]: 101: Hoare triple {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,326 INFO L290 TraceCheckUtils]: 100: Hoare triple {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {20997#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:18,326 INFO L290 TraceCheckUtils]: 99: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19407#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,327 INFO L290 TraceCheckUtils]: 98: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,327 INFO L290 TraceCheckUtils]: 97: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,327 INFO L290 TraceCheckUtils]: 96: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,328 INFO L290 TraceCheckUtils]: 95: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,328 INFO L290 TraceCheckUtils]: 94: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,328 INFO L290 TraceCheckUtils]: 93: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,329 INFO L290 TraceCheckUtils]: 92: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,329 INFO L290 TraceCheckUtils]: 91: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,329 INFO L290 TraceCheckUtils]: 90: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,330 INFO L290 TraceCheckUtils]: 89: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,330 INFO L290 TraceCheckUtils]: 88: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,330 INFO L290 TraceCheckUtils]: 87: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,331 INFO L290 TraceCheckUtils]: 86: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,331 INFO L290 TraceCheckUtils]: 85: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,331 INFO L290 TraceCheckUtils]: 84: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,332 INFO L290 TraceCheckUtils]: 83: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,332 INFO L290 TraceCheckUtils]: 82: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,332 INFO L290 TraceCheckUtils]: 81: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,333 INFO L290 TraceCheckUtils]: 80: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,333 INFO L290 TraceCheckUtils]: 79: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,333 INFO L290 TraceCheckUtils]: 78: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,352 INFO L290 TraceCheckUtils]: 77: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,352 INFO L290 TraceCheckUtils]: 76: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,353 INFO L290 TraceCheckUtils]: 75: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,353 INFO L290 TraceCheckUtils]: 74: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,353 INFO L290 TraceCheckUtils]: 73: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,354 INFO L290 TraceCheckUtils]: 72: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,354 INFO L290 TraceCheckUtils]: 71: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,354 INFO L290 TraceCheckUtils]: 70: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,354 INFO L290 TraceCheckUtils]: 69: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,355 INFO L290 TraceCheckUtils]: 68: Hoare triple {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,355 INFO L290 TraceCheckUtils]: 67: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19406#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,356 INFO L290 TraceCheckUtils]: 66: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,356 INFO L290 TraceCheckUtils]: 65: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,356 INFO L290 TraceCheckUtils]: 64: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,356 INFO L290 TraceCheckUtils]: 63: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,357 INFO L290 TraceCheckUtils]: 62: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,357 INFO L290 TraceCheckUtils]: 61: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,357 INFO L290 TraceCheckUtils]: 60: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,358 INFO L290 TraceCheckUtils]: 59: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,358 INFO L290 TraceCheckUtils]: 57: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,359 INFO L290 TraceCheckUtils]: 56: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,359 INFO L290 TraceCheckUtils]: 55: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,359 INFO L290 TraceCheckUtils]: 54: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,360 INFO L290 TraceCheckUtils]: 53: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,360 INFO L290 TraceCheckUtils]: 52: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,361 INFO L290 TraceCheckUtils]: 51: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,361 INFO L290 TraceCheckUtils]: 50: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,361 INFO L290 TraceCheckUtils]: 49: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,362 INFO L290 TraceCheckUtils]: 48: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,362 INFO L290 TraceCheckUtils]: 47: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,363 INFO L290 TraceCheckUtils]: 46: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,363 INFO L290 TraceCheckUtils]: 45: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,363 INFO L290 TraceCheckUtils]: 44: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,363 INFO L290 TraceCheckUtils]: 43: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,364 INFO L290 TraceCheckUtils]: 41: Hoare triple {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19542#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,365 INFO L290 TraceCheckUtils]: 39: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,365 INFO L290 TraceCheckUtils]: 38: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,365 INFO L290 TraceCheckUtils]: 37: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,366 INFO L290 TraceCheckUtils]: 36: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,366 INFO L290 TraceCheckUtils]: 35: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,366 INFO L290 TraceCheckUtils]: 34: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,367 INFO L290 TraceCheckUtils]: 33: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,367 INFO L290 TraceCheckUtils]: 32: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {21223#(or (not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19511#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:18,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {21223#(or (not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,368 INFO L290 TraceCheckUtils]: 28: Hoare triple {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,369 INFO L290 TraceCheckUtils]: 27: Hoare triple {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,369 INFO L290 TraceCheckUtils]: 26: Hoare triple {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,370 INFO L290 TraceCheckUtils]: 25: Hoare triple {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,370 INFO L290 TraceCheckUtils]: 24: Hoare triple {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {21227#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,371 INFO L290 TraceCheckUtils]: 22: Hoare triple {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,371 INFO L290 TraceCheckUtils]: 21: Hoare triple {21253#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {21243#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,372 INFO L290 TraceCheckUtils]: 20: Hoare triple {21253#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {21253#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,372 INFO L290 TraceCheckUtils]: 19: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {21253#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:18,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {19398#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {19398#true} is VALID [2022-02-20 23:50:18,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {19398#true} havoc main_#t~ret3#1; {19398#true} is VALID [2022-02-20 23:50:18,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {19398#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {19398#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {19398#true} foo_#res#1 := foo_~i~0#1; {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {19398#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 11: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 10: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 9: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:18,373 INFO L290 TraceCheckUtils]: 7: Hoare triple {19398#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 6: Hoare triple {19398#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 5: Hoare triple {19398#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 4: Hoare triple {19398#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 3: Hoare triple {19398#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {19398#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {19398#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {19398#true} is VALID [2022-02-20 23:50:18,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {19398#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {19398#true} is VALID [2022-02-20 23:50:18,378 INFO L134 CoverageAnalysis]: Checked inductivity of 6738 backedges. 3798 proven. 388 refuted. 0 times theorem prover too weak. 2552 trivial. 0 not checked. [2022-02-20 23:50:18,378 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [331232097] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:18,378 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:18,378 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16, 16] total 38 [2022-02-20 23:50:18,379 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1536144252] [2022-02-20 23:50:18,379 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:18,379 INFO L78 Accepts]: Start accepts. Automaton has has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 314 [2022-02-20 23:50:18,381 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:18,381 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 23:50:18,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:18,503 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 38 states [2022-02-20 23:50:18,503 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:18,503 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2022-02-20 23:50:18,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=277, Invalid=1129, Unknown=0, NotChecked=0, Total=1406 [2022-02-20 23:50:18,504 INFO L87 Difference]: Start difference. First operand 390 states and 411 transitions. Second operand has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 23:50:19,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:19,881 INFO L93 Difference]: Finished difference Result 390 states and 405 transitions. [2022-02-20 23:50:19,881 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-02-20 23:50:19,881 INFO L78 Accepts]: Start accepts. Automaton has has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 314 [2022-02-20 23:50:19,881 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:19,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 23:50:19,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 134 transitions. [2022-02-20 23:50:19,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 23:50:19,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 134 transitions. [2022-02-20 23:50:19,905 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states and 134 transitions. [2022-02-20 23:50:19,971 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:19,977 INFO L225 Difference]: With dead ends: 390 [2022-02-20 23:50:19,977 INFO L226 Difference]: Without dead ends: 390 [2022-02-20 23:50:19,977 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 668 GetRequests, 607 SyntacticMatches, 0 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 886 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=866, Invalid=3040, Unknown=0, NotChecked=0, Total=3906 [2022-02-20 23:50:19,978 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 137 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 868 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 137 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 901 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 868 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:19,978 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [137 Valid, 91 Invalid, 901 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 868 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:50:19,978 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-02-20 23:50:19,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 390. [2022-02-20 23:50:19,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:19,982 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 23:50:19,982 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 23:50:19,982 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 23:50:19,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:19,987 INFO L93 Difference]: Finished difference Result 390 states and 405 transitions. [2022-02-20 23:50:19,988 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 405 transitions. [2022-02-20 23:50:19,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:19,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:19,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 390 states. [2022-02-20 23:50:19,989 INFO L87 Difference]: Start difference. First operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 390 states. [2022-02-20 23:50:19,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:19,994 INFO L93 Difference]: Finished difference Result 390 states and 405 transitions. [2022-02-20 23:50:19,994 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 405 transitions. [2022-02-20 23:50:19,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:19,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:19,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:19,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:19,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 390 states, 389 states have (on average 1.0411311053984575) internal successors, (405), 389 states have internal predecessors, (405), 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 23:50:20,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 405 transitions. [2022-02-20 23:50:20,000 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 405 transitions. Word has length 314 [2022-02-20 23:50:20,000 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:20,000 INFO L470 AbstractCegarLoop]: Abstraction has 390 states and 405 transitions. [2022-02-20 23:50:20,001 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 38 states, 38 states have (on average 5.078947368421052) internal successors, (193), 38 states have internal predecessors, (193), 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 23:50:20,001 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 405 transitions. [2022-02-20 23:50:20,003 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 340 [2022-02-20 23:50:20,003 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:20,003 INFO L514 BasicCegarLoop]: trace histogram [55, 55, 54, 54, 54, 10, 9, 9, 9, 9, 9, 9, 1, 1, 1] [2022-02-20 23:50:20,021 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-02-20 23:50:20,220 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-02-20 23:50:20,220 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:20,221 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:20,221 INFO L85 PathProgramCache]: Analyzing trace with hash -525875421, now seen corresponding path program 6 times [2022-02-20 23:50:20,221 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:20,221 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1399723340] [2022-02-20 23:50:20,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:20,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:20,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:20,545 INFO L290 TraceCheckUtils]: 0: Hoare triple {22927#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {22927#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 2: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 3: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 4: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 5: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 6: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 7: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 8: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 9: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 10: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 11: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 12: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 14: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 15: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,546 INFO L290 TraceCheckUtils]: 16: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 18: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 23: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 24: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 25: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,547 INFO L290 TraceCheckUtils]: 26: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 27: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 28: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 29: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 30: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 31: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 32: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 33: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 34: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 35: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 36: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 37: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 38: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 39: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 40: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,548 INFO L290 TraceCheckUtils]: 41: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 42: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 43: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 44: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 45: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 46: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 47: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 48: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 49: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 50: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 51: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 52: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 53: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 54: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 55: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,549 INFO L290 TraceCheckUtils]: 56: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 57: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 58: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 59: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 60: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 61: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 62: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 63: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 64: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 65: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 66: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 67: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 68: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 69: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 70: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 71: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 72: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 73: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 74: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,550 INFO L290 TraceCheckUtils]: 75: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 76: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 77: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 78: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 79: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 80: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 81: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 82: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 83: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 84: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 85: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 86: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 87: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 88: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 89: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,551 INFO L290 TraceCheckUtils]: 90: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 91: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 92: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 93: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 94: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 95: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 96: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 97: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 98: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 99: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 100: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,552 INFO L290 TraceCheckUtils]: 101: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 102: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 103: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 104: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 105: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 106: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 107: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 108: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 109: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,553 INFO L290 TraceCheckUtils]: 110: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 111: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 112: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 113: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 114: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 115: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 116: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 117: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 118: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,554 INFO L290 TraceCheckUtils]: 119: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 120: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 121: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 122: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 123: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 124: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 125: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 126: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 127: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,555 INFO L290 TraceCheckUtils]: 128: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 129: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 130: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 131: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 132: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 133: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 134: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 135: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 136: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,556 INFO L290 TraceCheckUtils]: 137: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 138: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 139: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 140: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 141: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 142: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 143: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 144: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 145: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,557 INFO L290 TraceCheckUtils]: 146: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 147: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 148: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 149: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 150: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 151: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 152: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 153: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 154: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,558 INFO L290 TraceCheckUtils]: 155: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 156: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 157: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 158: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 159: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 160: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 161: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 162: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 163: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,559 INFO L290 TraceCheckUtils]: 164: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 165: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 166: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 167: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 168: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 169: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 170: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 171: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 172: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 173: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,560 INFO L290 TraceCheckUtils]: 174: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 175: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 176: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 177: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 178: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 179: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 180: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 181: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 182: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,561 INFO L290 TraceCheckUtils]: 183: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 184: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 185: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 186: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 187: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 188: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 189: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 190: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 191: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,562 INFO L290 TraceCheckUtils]: 192: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 193: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 194: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 195: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 196: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 197: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 198: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 199: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 200: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,563 INFO L290 TraceCheckUtils]: 201: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 202: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 203: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 204: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 205: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 206: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 207: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 208: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 209: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:20,564 INFO L290 TraceCheckUtils]: 210: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:20,565 INFO L290 TraceCheckUtils]: 211: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,565 INFO L290 TraceCheckUtils]: 212: Hoare triple {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,566 INFO L290 TraceCheckUtils]: 213: Hoare triple {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,566 INFO L290 TraceCheckUtils]: 214: Hoare triple {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,567 INFO L290 TraceCheckUtils]: 215: Hoare triple {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,567 INFO L290 TraceCheckUtils]: 216: Hoare triple {22929#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,568 INFO L290 TraceCheckUtils]: 217: Hoare triple {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,568 INFO L290 TraceCheckUtils]: 218: Hoare triple {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,568 INFO L290 TraceCheckUtils]: 219: Hoare triple {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,569 INFO L290 TraceCheckUtils]: 220: Hoare triple {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,569 INFO L290 TraceCheckUtils]: 221: Hoare triple {22930#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,570 INFO L290 TraceCheckUtils]: 222: Hoare triple {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,570 INFO L290 TraceCheckUtils]: 223: Hoare triple {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,571 INFO L290 TraceCheckUtils]: 224: Hoare triple {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,571 INFO L290 TraceCheckUtils]: 225: Hoare triple {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,572 INFO L290 TraceCheckUtils]: 226: Hoare triple {22931#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,572 INFO L290 TraceCheckUtils]: 227: Hoare triple {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,572 INFO L290 TraceCheckUtils]: 228: Hoare triple {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,573 INFO L290 TraceCheckUtils]: 229: Hoare triple {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,573 INFO L290 TraceCheckUtils]: 230: Hoare triple {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,574 INFO L290 TraceCheckUtils]: 231: Hoare triple {22932#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,574 INFO L290 TraceCheckUtils]: 232: Hoare triple {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,575 INFO L290 TraceCheckUtils]: 233: Hoare triple {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,575 INFO L290 TraceCheckUtils]: 234: Hoare triple {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,576 INFO L290 TraceCheckUtils]: 235: Hoare triple {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,576 INFO L290 TraceCheckUtils]: 236: Hoare triple {22933#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22934#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:20,577 INFO L290 TraceCheckUtils]: 237: Hoare triple {22934#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,577 INFO L290 TraceCheckUtils]: 238: Hoare triple {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,577 INFO L290 TraceCheckUtils]: 239: Hoare triple {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,578 INFO L290 TraceCheckUtils]: 240: Hoare triple {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,578 INFO L290 TraceCheckUtils]: 241: Hoare triple {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,579 INFO L290 TraceCheckUtils]: 242: Hoare triple {22935#(and (<= 4 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,579 INFO L290 TraceCheckUtils]: 243: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,579 INFO L290 TraceCheckUtils]: 244: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,579 INFO L290 TraceCheckUtils]: 245: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,580 INFO L290 TraceCheckUtils]: 246: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,580 INFO L290 TraceCheckUtils]: 247: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:20,581 INFO L290 TraceCheckUtils]: 248: Hoare triple {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,581 INFO L290 TraceCheckUtils]: 249: Hoare triple {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,581 INFO L290 TraceCheckUtils]: 250: Hoare triple {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,582 INFO L290 TraceCheckUtils]: 251: Hoare triple {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,582 INFO L290 TraceCheckUtils]: 252: Hoare triple {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:20,583 INFO L290 TraceCheckUtils]: 253: Hoare triple {22938#(and (<= 5 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,583 INFO L290 TraceCheckUtils]: 254: Hoare triple {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,583 INFO L290 TraceCheckUtils]: 255: Hoare triple {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,584 INFO L290 TraceCheckUtils]: 256: Hoare triple {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,584 INFO L290 TraceCheckUtils]: 257: Hoare triple {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,585 INFO L290 TraceCheckUtils]: 258: Hoare triple {22939#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,585 INFO L290 TraceCheckUtils]: 259: Hoare triple {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,586 INFO L290 TraceCheckUtils]: 260: Hoare triple {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,586 INFO L290 TraceCheckUtils]: 261: Hoare triple {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,587 INFO L290 TraceCheckUtils]: 262: Hoare triple {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,587 INFO L290 TraceCheckUtils]: 263: Hoare triple {22940#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:20,587 INFO L290 TraceCheckUtils]: 264: Hoare triple {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:20,588 INFO L290 TraceCheckUtils]: 265: Hoare triple {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:20,588 INFO L290 TraceCheckUtils]: 266: Hoare triple {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:20,589 INFO L290 TraceCheckUtils]: 267: Hoare triple {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:20,589 INFO L290 TraceCheckUtils]: 268: Hoare triple {22941#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,590 INFO L290 TraceCheckUtils]: 269: Hoare triple {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,590 INFO L290 TraceCheckUtils]: 270: Hoare triple {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,590 INFO L290 TraceCheckUtils]: 271: Hoare triple {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,591 INFO L290 TraceCheckUtils]: 272: Hoare triple {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,591 INFO L290 TraceCheckUtils]: 273: Hoare triple {22942#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,592 INFO L290 TraceCheckUtils]: 274: Hoare triple {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,592 INFO L290 TraceCheckUtils]: 275: Hoare triple {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,593 INFO L290 TraceCheckUtils]: 276: Hoare triple {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,593 INFO L290 TraceCheckUtils]: 277: Hoare triple {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,593 INFO L290 TraceCheckUtils]: 278: Hoare triple {22943#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22944#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 279: Hoare triple {22944#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 280: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 281: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 282: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 283: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:20,594 INFO L290 TraceCheckUtils]: 284: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 285: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 286: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 287: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 288: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 289: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 290: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 291: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 292: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,595 INFO L290 TraceCheckUtils]: 293: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 294: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 295: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 296: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 297: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 298: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 299: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 300: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 301: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,596 INFO L290 TraceCheckUtils]: 302: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 303: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 304: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 305: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 306: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 307: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 308: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 309: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 310: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,597 INFO L290 TraceCheckUtils]: 311: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 312: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 313: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 314: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 315: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 316: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 317: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 318: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 319: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,598 INFO L290 TraceCheckUtils]: 320: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 321: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 322: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 323: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 324: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 325: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 326: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 327: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 328: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,599 INFO L290 TraceCheckUtils]: 329: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 330: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 331: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 332: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 333: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 334: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 335: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 336: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 337: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:20,600 INFO L290 TraceCheckUtils]: 338: Hoare triple {22928#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {22928#false} is VALID [2022-02-20 23:50:20,603 INFO L134 CoverageAnalysis]: Checked inductivity of 8073 backedges. 4649 proven. 311 refuted. 0 times theorem prover too weak. 3113 trivial. 0 not checked. [2022-02-20 23:50:20,603 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:20,603 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1399723340] [2022-02-20 23:50:20,603 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1399723340] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:20,603 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [609092284] [2022-02-20 23:50:20,603 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:50:20,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:20,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:20,605 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:20,606 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-02-20 23:50:20,935 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 16 check-sat command(s) [2022-02-20 23:50:20,935 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:20,938 INFO L263 TraceCheckSpWp]: Trace formula consists of 883 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:50:20,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:20,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:21,981 INFO L290 TraceCheckUtils]: 0: Hoare triple {22927#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {22927#true} is VALID [2022-02-20 23:50:21,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {22927#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 2: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 3: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 4: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 6: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:21,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 10: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 11: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 12: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 13: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 17: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:21,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:21,984 INFO L290 TraceCheckUtils]: 19: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23005#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {23005#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23005#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,984 INFO L290 TraceCheckUtils]: 21: Hoare triple {23005#(<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,985 INFO L290 TraceCheckUtils]: 23: Hoare triple {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,986 INFO L290 TraceCheckUtils]: 24: Hoare triple {23012#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 0 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,986 INFO L290 TraceCheckUtils]: 25: Hoare triple {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,986 INFO L290 TraceCheckUtils]: 26: Hoare triple {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,987 INFO L290 TraceCheckUtils]: 28: Hoare triple {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,987 INFO L290 TraceCheckUtils]: 29: Hoare triple {23022#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23038#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:21,988 INFO L290 TraceCheckUtils]: 30: Hoare triple {23038#(and (<= |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_main_~i~1#1|) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,988 INFO L290 TraceCheckUtils]: 31: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,988 INFO L290 TraceCheckUtils]: 32: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,988 INFO L290 TraceCheckUtils]: 33: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,989 INFO L290 TraceCheckUtils]: 34: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,989 INFO L290 TraceCheckUtils]: 35: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,989 INFO L290 TraceCheckUtils]: 36: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,989 INFO L290 TraceCheckUtils]: 37: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,990 INFO L290 TraceCheckUtils]: 39: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,990 INFO L290 TraceCheckUtils]: 40: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,990 INFO L290 TraceCheckUtils]: 41: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,990 INFO L290 TraceCheckUtils]: 42: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,991 INFO L290 TraceCheckUtils]: 43: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,991 INFO L290 TraceCheckUtils]: 44: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,991 INFO L290 TraceCheckUtils]: 45: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,991 INFO L290 TraceCheckUtils]: 46: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,992 INFO L290 TraceCheckUtils]: 47: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,992 INFO L290 TraceCheckUtils]: 48: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,992 INFO L290 TraceCheckUtils]: 49: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,992 INFO L290 TraceCheckUtils]: 50: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,993 INFO L290 TraceCheckUtils]: 51: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,993 INFO L290 TraceCheckUtils]: 52: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,993 INFO L290 TraceCheckUtils]: 53: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,993 INFO L290 TraceCheckUtils]: 54: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,993 INFO L290 TraceCheckUtils]: 55: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,994 INFO L290 TraceCheckUtils]: 56: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,994 INFO L290 TraceCheckUtils]: 57: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,994 INFO L290 TraceCheckUtils]: 58: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,994 INFO L290 TraceCheckUtils]: 59: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,995 INFO L290 TraceCheckUtils]: 60: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,995 INFO L290 TraceCheckUtils]: 61: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,995 INFO L290 TraceCheckUtils]: 62: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,995 INFO L290 TraceCheckUtils]: 63: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,996 INFO L290 TraceCheckUtils]: 64: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,996 INFO L290 TraceCheckUtils]: 65: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,996 INFO L290 TraceCheckUtils]: 66: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,997 INFO L290 TraceCheckUtils]: 67: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,997 INFO L290 TraceCheckUtils]: 68: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,997 INFO L290 TraceCheckUtils]: 69: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,997 INFO L290 TraceCheckUtils]: 70: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,998 INFO L290 TraceCheckUtils]: 71: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,998 INFO L290 TraceCheckUtils]: 72: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,998 INFO L290 TraceCheckUtils]: 73: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,998 INFO L290 TraceCheckUtils]: 74: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,998 INFO L290 TraceCheckUtils]: 75: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,999 INFO L290 TraceCheckUtils]: 76: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,999 INFO L290 TraceCheckUtils]: 77: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,999 INFO L290 TraceCheckUtils]: 78: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:21,999 INFO L290 TraceCheckUtils]: 79: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,000 INFO L290 TraceCheckUtils]: 80: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,001 INFO L290 TraceCheckUtils]: 81: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,001 INFO L290 TraceCheckUtils]: 82: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,001 INFO L290 TraceCheckUtils]: 83: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,001 INFO L290 TraceCheckUtils]: 84: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,002 INFO L290 TraceCheckUtils]: 85: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,002 INFO L290 TraceCheckUtils]: 86: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,002 INFO L290 TraceCheckUtils]: 87: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,002 INFO L290 TraceCheckUtils]: 88: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,002 INFO L290 TraceCheckUtils]: 89: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,003 INFO L290 TraceCheckUtils]: 90: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,003 INFO L290 TraceCheckUtils]: 91: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,003 INFO L290 TraceCheckUtils]: 92: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,003 INFO L290 TraceCheckUtils]: 93: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,004 INFO L290 TraceCheckUtils]: 94: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,004 INFO L290 TraceCheckUtils]: 95: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,004 INFO L290 TraceCheckUtils]: 96: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,004 INFO L290 TraceCheckUtils]: 97: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,004 INFO L290 TraceCheckUtils]: 98: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,005 INFO L290 TraceCheckUtils]: 99: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,005 INFO L290 TraceCheckUtils]: 100: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,005 INFO L290 TraceCheckUtils]: 101: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,006 INFO L290 TraceCheckUtils]: 102: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,006 INFO L290 TraceCheckUtils]: 103: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,006 INFO L290 TraceCheckUtils]: 104: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,006 INFO L290 TraceCheckUtils]: 105: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,006 INFO L290 TraceCheckUtils]: 106: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,007 INFO L290 TraceCheckUtils]: 107: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,007 INFO L290 TraceCheckUtils]: 108: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,007 INFO L290 TraceCheckUtils]: 109: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,007 INFO L290 TraceCheckUtils]: 110: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,008 INFO L290 TraceCheckUtils]: 111: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,008 INFO L290 TraceCheckUtils]: 112: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,008 INFO L290 TraceCheckUtils]: 113: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,008 INFO L290 TraceCheckUtils]: 114: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,009 INFO L290 TraceCheckUtils]: 115: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,009 INFO L290 TraceCheckUtils]: 116: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,009 INFO L290 TraceCheckUtils]: 117: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,009 INFO L290 TraceCheckUtils]: 118: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,009 INFO L290 TraceCheckUtils]: 119: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,010 INFO L290 TraceCheckUtils]: 120: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,010 INFO L290 TraceCheckUtils]: 121: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,010 INFO L290 TraceCheckUtils]: 122: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,010 INFO L290 TraceCheckUtils]: 123: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,011 INFO L290 TraceCheckUtils]: 124: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,011 INFO L290 TraceCheckUtils]: 125: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,011 INFO L290 TraceCheckUtils]: 126: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,011 INFO L290 TraceCheckUtils]: 127: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,011 INFO L290 TraceCheckUtils]: 128: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,012 INFO L290 TraceCheckUtils]: 129: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,012 INFO L290 TraceCheckUtils]: 130: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,012 INFO L290 TraceCheckUtils]: 131: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,012 INFO L290 TraceCheckUtils]: 132: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,013 INFO L290 TraceCheckUtils]: 133: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,013 INFO L290 TraceCheckUtils]: 134: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,013 INFO L290 TraceCheckUtils]: 135: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,013 INFO L290 TraceCheckUtils]: 136: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,014 INFO L290 TraceCheckUtils]: 137: Hoare triple {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:22,014 INFO L290 TraceCheckUtils]: 138: Hoare triple {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:22,014 INFO L290 TraceCheckUtils]: 139: Hoare triple {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:22,015 INFO L290 TraceCheckUtils]: 140: Hoare triple {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:22,015 INFO L290 TraceCheckUtils]: 141: Hoare triple {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:22,015 INFO L290 TraceCheckUtils]: 142: Hoare triple {23366#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:22,016 INFO L290 TraceCheckUtils]: 143: Hoare triple {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:22,016 INFO L290 TraceCheckUtils]: 144: Hoare triple {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:22,016 INFO L290 TraceCheckUtils]: 145: Hoare triple {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:22,017 INFO L290 TraceCheckUtils]: 146: Hoare triple {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:22,017 INFO L290 TraceCheckUtils]: 147: Hoare triple {23382#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:22,017 INFO L290 TraceCheckUtils]: 148: Hoare triple {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:22,018 INFO L290 TraceCheckUtils]: 149: Hoare triple {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:22,018 INFO L290 TraceCheckUtils]: 150: Hoare triple {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:22,018 INFO L290 TraceCheckUtils]: 151: Hoare triple {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:22,019 INFO L290 TraceCheckUtils]: 152: Hoare triple {23398#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:22,019 INFO L290 TraceCheckUtils]: 153: Hoare triple {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:22,019 INFO L290 TraceCheckUtils]: 154: Hoare triple {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:22,020 INFO L290 TraceCheckUtils]: 155: Hoare triple {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:22,020 INFO L290 TraceCheckUtils]: 156: Hoare triple {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:22,020 INFO L290 TraceCheckUtils]: 157: Hoare triple {23414#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:22,021 INFO L290 TraceCheckUtils]: 158: Hoare triple {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:22,021 INFO L290 TraceCheckUtils]: 159: Hoare triple {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:22,021 INFO L290 TraceCheckUtils]: 160: Hoare triple {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:22,021 INFO L290 TraceCheckUtils]: 161: Hoare triple {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:22,022 INFO L290 TraceCheckUtils]: 162: Hoare triple {23430#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:22,022 INFO L290 TraceCheckUtils]: 163: Hoare triple {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:22,022 INFO L290 TraceCheckUtils]: 164: Hoare triple {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:22,023 INFO L290 TraceCheckUtils]: 165: Hoare triple {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:22,023 INFO L290 TraceCheckUtils]: 166: Hoare triple {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:22,023 INFO L290 TraceCheckUtils]: 167: Hoare triple {23446#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23462#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 168: Hoare triple {23462#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 169: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 170: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 171: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 172: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 173: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,024 INFO L290 TraceCheckUtils]: 174: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 175: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 176: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 177: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 178: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 179: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 180: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 181: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 182: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,025 INFO L290 TraceCheckUtils]: 183: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 184: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 185: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 186: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 187: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 188: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 189: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 190: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 191: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,026 INFO L290 TraceCheckUtils]: 192: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 193: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 194: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 195: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 196: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 197: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 198: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 199: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 200: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,027 INFO L290 TraceCheckUtils]: 201: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 202: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 203: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 204: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 205: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 206: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 207: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 208: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 209: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,028 INFO L290 TraceCheckUtils]: 210: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 211: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 212: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 213: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 214: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 215: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 216: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 217: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 218: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,029 INFO L290 TraceCheckUtils]: 219: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 220: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 221: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 222: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 223: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 224: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 225: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 226: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 227: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,030 INFO L290 TraceCheckUtils]: 228: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 229: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 230: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 231: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 232: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 233: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 234: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 235: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 236: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,031 INFO L290 TraceCheckUtils]: 237: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 238: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 239: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 240: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 241: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 242: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 243: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 244: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 245: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,032 INFO L290 TraceCheckUtils]: 246: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 247: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 248: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 249: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 250: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 251: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 252: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 253: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 254: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,033 INFO L290 TraceCheckUtils]: 255: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 256: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 257: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 258: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 259: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 260: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 261: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 262: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 263: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,034 INFO L290 TraceCheckUtils]: 264: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 265: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 266: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 267: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 268: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 269: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 270: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 271: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 272: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,035 INFO L290 TraceCheckUtils]: 273: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 274: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 275: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 276: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 277: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 278: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 279: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 280: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 281: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,036 INFO L290 TraceCheckUtils]: 282: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 283: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 284: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 285: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 286: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 287: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 288: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 289: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 290: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,037 INFO L290 TraceCheckUtils]: 291: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 292: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 293: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 294: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 295: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 296: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 297: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 298: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 299: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,038 INFO L290 TraceCheckUtils]: 300: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 301: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 302: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 303: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 304: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 305: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 306: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 307: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 308: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,039 INFO L290 TraceCheckUtils]: 309: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 310: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 311: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 312: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 313: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 314: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 315: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 316: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 317: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,040 INFO L290 TraceCheckUtils]: 318: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 319: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 320: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 321: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 322: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 323: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 324: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 325: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 326: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,041 INFO L290 TraceCheckUtils]: 327: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 328: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 329: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 330: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 331: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 332: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 333: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 334: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 335: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,042 INFO L290 TraceCheckUtils]: 336: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,043 INFO L290 TraceCheckUtils]: 337: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,043 INFO L290 TraceCheckUtils]: 338: Hoare triple {22928#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {22928#false} is VALID [2022-02-20 23:50:22,045 INFO L134 CoverageAnalysis]: Checked inductivity of 8073 backedges. 4943 proven. 852 refuted. 0 times theorem prover too weak. 2278 trivial. 0 not checked. [2022-02-20 23:50:22,045 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:22,715 INFO L290 TraceCheckUtils]: 338: Hoare triple {22928#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {22928#false} is VALID [2022-02-20 23:50:22,715 INFO L290 TraceCheckUtils]: 337: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,715 INFO L290 TraceCheckUtils]: 336: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,715 INFO L290 TraceCheckUtils]: 335: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 334: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 333: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 332: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 331: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 330: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 329: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 328: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 327: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,716 INFO L290 TraceCheckUtils]: 326: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 325: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 324: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 323: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 322: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 321: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 320: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 319: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 318: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,717 INFO L290 TraceCheckUtils]: 317: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 316: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 315: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 314: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 313: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 312: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 311: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 310: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 309: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,718 INFO L290 TraceCheckUtils]: 308: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 307: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 306: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 305: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 304: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 303: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 302: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 301: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 300: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,719 INFO L290 TraceCheckUtils]: 299: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 298: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 297: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 296: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 295: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 294: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 293: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 292: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,720 INFO L290 TraceCheckUtils]: 291: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 290: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 289: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 288: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 287: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 286: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 285: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 284: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 283: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,721 INFO L290 TraceCheckUtils]: 282: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 281: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 280: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 279: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 278: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 277: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 276: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 275: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 274: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,722 INFO L290 TraceCheckUtils]: 273: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 272: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 271: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 270: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 269: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 268: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 267: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 266: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 265: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,723 INFO L290 TraceCheckUtils]: 264: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 263: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 262: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 261: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 260: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 259: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 258: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 257: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 256: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,724 INFO L290 TraceCheckUtils]: 255: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 254: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 253: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 252: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 251: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 250: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 249: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 248: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 247: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,725 INFO L290 TraceCheckUtils]: 246: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 245: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 244: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 243: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 242: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 241: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 240: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 239: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 238: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,726 INFO L290 TraceCheckUtils]: 237: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 236: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 235: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 234: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 233: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 232: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 231: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 230: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 229: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,727 INFO L290 TraceCheckUtils]: 228: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 227: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 226: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 225: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 224: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 223: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 222: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 221: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 220: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,728 INFO L290 TraceCheckUtils]: 219: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 218: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 217: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 216: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 215: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 214: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 213: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 212: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 211: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,729 INFO L290 TraceCheckUtils]: 210: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 209: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 208: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 207: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 206: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 205: Hoare triple {22928#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 204: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 203: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 202: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,730 INFO L290 TraceCheckUtils]: 201: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 200: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 199: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 198: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 197: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 196: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 195: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 194: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 193: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,731 INFO L290 TraceCheckUtils]: 192: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 191: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 190: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 189: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 188: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 187: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 186: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 185: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 184: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,732 INFO L290 TraceCheckUtils]: 183: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 182: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 181: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 180: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 179: Hoare triple {22928#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 178: Hoare triple {22928#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 177: Hoare triple {22928#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 176: Hoare triple {22928#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 175: Hoare triple {22928#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,733 INFO L290 TraceCheckUtils]: 174: Hoare triple {22928#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22928#false} is VALID [2022-02-20 23:50:22,734 INFO L290 TraceCheckUtils]: 173: Hoare triple {22928#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22928#false} is VALID [2022-02-20 23:50:22,734 INFO L290 TraceCheckUtils]: 172: Hoare triple {22928#false} havoc main_#t~ret3#1; {22928#false} is VALID [2022-02-20 23:50:22,734 INFO L290 TraceCheckUtils]: 171: Hoare triple {22928#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22928#false} is VALID [2022-02-20 23:50:22,734 INFO L290 TraceCheckUtils]: 170: Hoare triple {22928#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22928#false} is VALID [2022-02-20 23:50:22,734 INFO L290 TraceCheckUtils]: 169: Hoare triple {22928#false} foo_#res#1 := foo_~i~0#1; {22928#false} is VALID [2022-02-20 23:50:22,739 INFO L290 TraceCheckUtils]: 168: Hoare triple {24486#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22928#false} is VALID [2022-02-20 23:50:22,740 INFO L290 TraceCheckUtils]: 167: Hoare triple {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24486#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:50:22,740 INFO L290 TraceCheckUtils]: 166: Hoare triple {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,740 INFO L290 TraceCheckUtils]: 165: Hoare triple {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,741 INFO L290 TraceCheckUtils]: 164: Hoare triple {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,741 INFO L290 TraceCheckUtils]: 163: Hoare triple {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,741 INFO L290 TraceCheckUtils]: 162: Hoare triple {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24490#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,742 INFO L290 TraceCheckUtils]: 161: Hoare triple {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,742 INFO L290 TraceCheckUtils]: 160: Hoare triple {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,742 INFO L290 TraceCheckUtils]: 159: Hoare triple {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,743 INFO L290 TraceCheckUtils]: 158: Hoare triple {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,743 INFO L290 TraceCheckUtils]: 157: Hoare triple {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24506#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,743 INFO L290 TraceCheckUtils]: 156: Hoare triple {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,744 INFO L290 TraceCheckUtils]: 155: Hoare triple {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,744 INFO L290 TraceCheckUtils]: 154: Hoare triple {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,745 INFO L290 TraceCheckUtils]: 153: Hoare triple {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,745 INFO L290 TraceCheckUtils]: 152: Hoare triple {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24522#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,745 INFO L290 TraceCheckUtils]: 151: Hoare triple {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,746 INFO L290 TraceCheckUtils]: 150: Hoare triple {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,746 INFO L290 TraceCheckUtils]: 149: Hoare triple {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,746 INFO L290 TraceCheckUtils]: 148: Hoare triple {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,747 INFO L290 TraceCheckUtils]: 147: Hoare triple {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24538#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,747 INFO L290 TraceCheckUtils]: 146: Hoare triple {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,747 INFO L290 TraceCheckUtils]: 145: Hoare triple {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,748 INFO L290 TraceCheckUtils]: 144: Hoare triple {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,748 INFO L290 TraceCheckUtils]: 143: Hoare triple {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,748 INFO L290 TraceCheckUtils]: 142: Hoare triple {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24554#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,749 INFO L290 TraceCheckUtils]: 141: Hoare triple {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,749 INFO L290 TraceCheckUtils]: 140: Hoare triple {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,749 INFO L290 TraceCheckUtils]: 139: Hoare triple {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,750 INFO L290 TraceCheckUtils]: 138: Hoare triple {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,750 INFO L290 TraceCheckUtils]: 137: Hoare triple {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {24570#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:22,750 INFO L290 TraceCheckUtils]: 136: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22937#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,751 INFO L290 TraceCheckUtils]: 135: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,751 INFO L290 TraceCheckUtils]: 134: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,751 INFO L290 TraceCheckUtils]: 133: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,751 INFO L290 TraceCheckUtils]: 132: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,752 INFO L290 TraceCheckUtils]: 131: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,752 INFO L290 TraceCheckUtils]: 130: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,752 INFO L290 TraceCheckUtils]: 129: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,752 INFO L290 TraceCheckUtils]: 128: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,753 INFO L290 TraceCheckUtils]: 127: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,753 INFO L290 TraceCheckUtils]: 126: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,753 INFO L290 TraceCheckUtils]: 125: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,753 INFO L290 TraceCheckUtils]: 124: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,754 INFO L290 TraceCheckUtils]: 123: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,754 INFO L290 TraceCheckUtils]: 122: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,754 INFO L290 TraceCheckUtils]: 121: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,755 INFO L290 TraceCheckUtils]: 120: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,755 INFO L290 TraceCheckUtils]: 119: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,755 INFO L290 TraceCheckUtils]: 118: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,755 INFO L290 TraceCheckUtils]: 117: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,756 INFO L290 TraceCheckUtils]: 116: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,756 INFO L290 TraceCheckUtils]: 115: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,756 INFO L290 TraceCheckUtils]: 114: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,756 INFO L290 TraceCheckUtils]: 113: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,757 INFO L290 TraceCheckUtils]: 112: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,757 INFO L290 TraceCheckUtils]: 111: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,757 INFO L290 TraceCheckUtils]: 110: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,757 INFO L290 TraceCheckUtils]: 109: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,758 INFO L290 TraceCheckUtils]: 108: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,758 INFO L290 TraceCheckUtils]: 107: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,758 INFO L290 TraceCheckUtils]: 106: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,758 INFO L290 TraceCheckUtils]: 105: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,759 INFO L290 TraceCheckUtils]: 104: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,759 INFO L290 TraceCheckUtils]: 103: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,759 INFO L290 TraceCheckUtils]: 102: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,760 INFO L290 TraceCheckUtils]: 101: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,760 INFO L290 TraceCheckUtils]: 100: Hoare triple {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,760 INFO L290 TraceCheckUtils]: 99: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22936#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,761 INFO L290 TraceCheckUtils]: 98: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,761 INFO L290 TraceCheckUtils]: 97: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,761 INFO L290 TraceCheckUtils]: 96: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,761 INFO L290 TraceCheckUtils]: 95: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,762 INFO L290 TraceCheckUtils]: 94: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,762 INFO L290 TraceCheckUtils]: 93: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,762 INFO L290 TraceCheckUtils]: 92: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,762 INFO L290 TraceCheckUtils]: 91: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,763 INFO L290 TraceCheckUtils]: 90: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,763 INFO L290 TraceCheckUtils]: 89: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,763 INFO L290 TraceCheckUtils]: 88: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,763 INFO L290 TraceCheckUtils]: 87: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,764 INFO L290 TraceCheckUtils]: 86: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,764 INFO L290 TraceCheckUtils]: 85: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,764 INFO L290 TraceCheckUtils]: 84: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,765 INFO L290 TraceCheckUtils]: 83: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,765 INFO L290 TraceCheckUtils]: 82: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,765 INFO L290 TraceCheckUtils]: 81: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,765 INFO L290 TraceCheckUtils]: 80: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,766 INFO L290 TraceCheckUtils]: 79: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,766 INFO L290 TraceCheckUtils]: 78: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,766 INFO L290 TraceCheckUtils]: 77: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,766 INFO L290 TraceCheckUtils]: 76: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,767 INFO L290 TraceCheckUtils]: 75: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,767 INFO L290 TraceCheckUtils]: 74: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,767 INFO L290 TraceCheckUtils]: 73: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,767 INFO L290 TraceCheckUtils]: 72: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,768 INFO L290 TraceCheckUtils]: 71: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,768 INFO L290 TraceCheckUtils]: 70: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,768 INFO L290 TraceCheckUtils]: 69: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,768 INFO L290 TraceCheckUtils]: 68: Hoare triple {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,769 INFO L290 TraceCheckUtils]: 67: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {23155#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,769 INFO L290 TraceCheckUtils]: 66: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,769 INFO L290 TraceCheckUtils]: 65: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,770 INFO L290 TraceCheckUtils]: 64: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,770 INFO L290 TraceCheckUtils]: 63: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,770 INFO L290 TraceCheckUtils]: 62: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,771 INFO L290 TraceCheckUtils]: 61: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,771 INFO L290 TraceCheckUtils]: 60: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,771 INFO L290 TraceCheckUtils]: 59: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,771 INFO L290 TraceCheckUtils]: 58: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,772 INFO L290 TraceCheckUtils]: 57: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,772 INFO L290 TraceCheckUtils]: 56: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,772 INFO L290 TraceCheckUtils]: 55: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,772 INFO L290 TraceCheckUtils]: 54: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,773 INFO L290 TraceCheckUtils]: 53: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,773 INFO L290 TraceCheckUtils]: 52: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,773 INFO L290 TraceCheckUtils]: 51: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,773 INFO L290 TraceCheckUtils]: 50: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,774 INFO L290 TraceCheckUtils]: 49: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,774 INFO L290 TraceCheckUtils]: 48: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,774 INFO L290 TraceCheckUtils]: 47: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,775 INFO L290 TraceCheckUtils]: 46: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,775 INFO L290 TraceCheckUtils]: 45: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,775 INFO L290 TraceCheckUtils]: 44: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,775 INFO L290 TraceCheckUtils]: 43: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,776 INFO L290 TraceCheckUtils]: 42: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,776 INFO L290 TraceCheckUtils]: 41: Hoare triple {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,776 INFO L290 TraceCheckUtils]: 40: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {23073#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,777 INFO L290 TraceCheckUtils]: 39: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,777 INFO L290 TraceCheckUtils]: 38: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,777 INFO L290 TraceCheckUtils]: 37: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,777 INFO L290 TraceCheckUtils]: 36: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,778 INFO L290 TraceCheckUtils]: 35: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,778 INFO L290 TraceCheckUtils]: 34: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,778 INFO L290 TraceCheckUtils]: 33: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,778 INFO L290 TraceCheckUtils]: 32: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,779 INFO L290 TraceCheckUtils]: 31: Hoare triple {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,779 INFO L290 TraceCheckUtils]: 30: Hoare triple {24907#(or (not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {23042#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:22,779 INFO L290 TraceCheckUtils]: 29: Hoare triple {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24907#(or (not (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,780 INFO L290 TraceCheckUtils]: 28: Hoare triple {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,780 INFO L290 TraceCheckUtils]: 27: Hoare triple {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,781 INFO L290 TraceCheckUtils]: 26: Hoare triple {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,781 INFO L290 TraceCheckUtils]: 25: Hoare triple {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {24911#(or (< |ULTIMATE.start_foo_~size#1| |ULTIMATE.start_foo_~i~0#1|) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,782 INFO L290 TraceCheckUtils]: 23: Hoare triple {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,782 INFO L290 TraceCheckUtils]: 21: Hoare triple {24937#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {24927#(or (< |ULTIMATE.start_foo_~size#1| (+ |ULTIMATE.start_foo_~i~0#1| 1)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {24937#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {24937#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 19: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {24937#(or (< |ULTIMATE.start_foo_~size#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {22927#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {22927#true} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {22927#true} havoc main_#t~ret3#1; {22927#true} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {22927#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {22927#true} is VALID [2022-02-20 23:50:22,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {22927#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {22927#true} foo_#res#1 := foo_~i~0#1; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {22927#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 11: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 10: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {22927#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {22927#true} is VALID [2022-02-20 23:50:22,784 INFO L290 TraceCheckUtils]: 6: Hoare triple {22927#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {22927#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 4: Hoare triple {22927#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 3: Hoare triple {22927#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {22927#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {22927#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {22927#true} is VALID [2022-02-20 23:50:22,785 INFO L290 TraceCheckUtils]: 0: Hoare triple {22927#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {22927#true} is VALID [2022-02-20 23:50:22,788 INFO L134 CoverageAnalysis]: Checked inductivity of 8073 backedges. 5125 proven. 670 refuted. 0 times theorem prover too weak. 2278 trivial. 0 not checked. [2022-02-20 23:50:22,788 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [609092284] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:22,788 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:22,788 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18, 18] total 43 [2022-02-20 23:50:22,788 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1557040339] [2022-02-20 23:50:22,789 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:22,789 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 339 [2022-02-20 23:50:22,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:22,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 23:50:22,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:22,908 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-02-20 23:50:22,908 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:22,909 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-02-20 23:50:22,909 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=344, Invalid=1462, Unknown=0, NotChecked=0, Total=1806 [2022-02-20 23:50:22,909 INFO L87 Difference]: Start difference. First operand 390 states and 405 transitions. Second operand has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 23:50:24,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:24,673 INFO L93 Difference]: Finished difference Result 390 states and 400 transitions. [2022-02-20 23:50:24,673 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 41 states. [2022-02-20 23:50:24,674 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 339 [2022-02-20 23:50:24,674 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:24,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 23:50:24,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 176 transitions. [2022-02-20 23:50:24,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 23:50:24,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 176 transitions. [2022-02-20 23:50:24,679 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 41 states and 176 transitions. [2022-02-20 23:50:24,760 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:24,765 INFO L225 Difference]: With dead ends: 390 [2022-02-20 23:50:24,765 INFO L226 Difference]: Without dead ends: 390 [2022-02-20 23:50:24,767 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 729 GetRequests, 654 SyntacticMatches, 0 SemanticMatches, 75 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1343 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=1250, Invalid=4602, Unknown=0, NotChecked=0, Total=5852 [2022-02-20 23:50:24,767 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 135 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 1570 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 135 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 1598 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 1570 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:24,767 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [135 Valid, 174 Invalid, 1598 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 1570 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:50:24,768 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-02-20 23:50:24,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 390. [2022-02-20 23:50:24,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:24,778 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 23:50:24,778 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 23:50:24,779 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 23:50:24,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:24,784 INFO L93 Difference]: Finished difference Result 390 states and 400 transitions. [2022-02-20 23:50:24,784 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 400 transitions. [2022-02-20 23:50:24,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:24,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:24,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 390 states. [2022-02-20 23:50:24,786 INFO L87 Difference]: Start difference. First operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 390 states. [2022-02-20 23:50:24,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:24,792 INFO L93 Difference]: Finished difference Result 390 states and 400 transitions. [2022-02-20 23:50:24,792 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 400 transitions. [2022-02-20 23:50:24,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:24,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:24,792 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:24,792 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:24,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 390 states, 389 states have (on average 1.0282776349614395) internal successors, (400), 389 states have internal predecessors, (400), 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 23:50:24,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 400 transitions. [2022-02-20 23:50:24,798 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 400 transitions. Word has length 339 [2022-02-20 23:50:24,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:24,798 INFO L470 AbstractCegarLoop]: Abstraction has 390 states and 400 transitions. [2022-02-20 23:50:24,799 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 43 states have (on average 5.232558139534884) internal successors, (225), 43 states have internal predecessors, (225), 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 23:50:24,799 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 400 transitions. [2022-02-20 23:50:24,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 360 [2022-02-20 23:50:24,801 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:24,802 INFO L514 BasicCegarLoop]: trace histogram [59, 59, 58, 58, 58, 10, 9, 9, 9, 9, 9, 9, 1, 1, 1] [2022-02-20 23:50:24,825 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-02-20 23:50:25,015 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-02-20 23:50:25,015 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:25,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:25,016 INFO L85 PathProgramCache]: Analyzing trace with hash -814421421, now seen corresponding path program 7 times [2022-02-20 23:50:25,016 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:25,016 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1813407314] [2022-02-20 23:50:25,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:25,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:25,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:25,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {26629#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {26629#true} is VALID [2022-02-20 23:50:25,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {26629#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,410 INFO L290 TraceCheckUtils]: 3: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,410 INFO L290 TraceCheckUtils]: 4: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 5: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 6: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 7: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 10: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 11: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 15: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,411 INFO L290 TraceCheckUtils]: 17: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 18: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 19: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 20: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 21: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 22: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 23: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 24: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 25: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 26: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 27: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 28: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 29: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 30: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,412 INFO L290 TraceCheckUtils]: 33: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 34: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 35: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 36: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 37: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 38: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 39: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 40: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 41: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 42: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 43: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 44: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 45: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 46: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,413 INFO L290 TraceCheckUtils]: 47: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 48: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 49: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 50: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 51: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 52: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 53: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 54: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 55: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 56: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 57: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 58: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 59: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,414 INFO L290 TraceCheckUtils]: 60: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 61: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 62: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 63: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 64: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 65: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 66: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 67: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 68: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 69: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 70: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 71: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 72: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 73: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 74: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 75: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,415 INFO L290 TraceCheckUtils]: 76: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 77: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 78: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 79: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 80: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 81: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 82: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 83: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 84: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 85: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 86: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 87: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 88: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 89: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 90: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,416 INFO L290 TraceCheckUtils]: 91: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,417 INFO L290 TraceCheckUtils]: 92: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,417 INFO L290 TraceCheckUtils]: 93: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,417 INFO L290 TraceCheckUtils]: 94: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,417 INFO L290 TraceCheckUtils]: 95: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 96: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 97: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 98: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 99: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 100: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 101: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 102: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 103: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,418 INFO L290 TraceCheckUtils]: 104: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 105: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 106: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 107: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 108: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 109: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 110: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 111: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 112: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,419 INFO L290 TraceCheckUtils]: 113: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 114: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 115: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 116: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 117: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 118: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 119: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 120: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 121: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,420 INFO L290 TraceCheckUtils]: 122: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 123: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 124: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 125: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 126: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 127: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 128: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 129: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 130: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,421 INFO L290 TraceCheckUtils]: 131: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 132: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 133: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 134: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 135: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 136: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 137: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 138: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 139: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,422 INFO L290 TraceCheckUtils]: 140: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 141: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 142: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 143: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 144: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 145: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 146: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 147: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 148: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,423 INFO L290 TraceCheckUtils]: 149: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 150: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 151: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 152: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 153: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 154: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 155: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 156: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,424 INFO L290 TraceCheckUtils]: 157: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 158: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 159: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 160: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 161: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 162: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 163: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 164: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 165: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,425 INFO L290 TraceCheckUtils]: 166: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 167: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 168: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 169: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 170: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 171: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 172: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 173: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 174: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,426 INFO L290 TraceCheckUtils]: 175: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 176: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 177: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 178: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 179: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 180: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 181: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 182: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 183: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,427 INFO L290 TraceCheckUtils]: 184: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 185: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 186: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 187: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 188: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 189: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 190: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 191: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 192: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,428 INFO L290 TraceCheckUtils]: 193: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 194: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 195: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 196: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 197: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 198: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 199: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 200: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 201: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 202: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,429 INFO L290 TraceCheckUtils]: 203: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 204: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 205: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 206: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 207: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 208: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 209: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 210: Hoare triple {26629#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 211: Hoare triple {26629#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26629#true} is VALID [2022-02-20 23:50:25,430 INFO L290 TraceCheckUtils]: 212: Hoare triple {26629#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 213: Hoare triple {26629#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 214: Hoare triple {26629#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 215: Hoare triple {26629#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 216: Hoare triple {26629#true} foo_#res#1 := foo_~i~0#1; {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 217: Hoare triple {26629#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 218: Hoare triple {26629#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 219: Hoare triple {26629#true} havoc main_#t~ret3#1; {26629#true} is VALID [2022-02-20 23:50:25,431 INFO L290 TraceCheckUtils]: 220: Hoare triple {26629#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26629#true} is VALID [2022-02-20 23:50:25,432 INFO L290 TraceCheckUtils]: 221: Hoare triple {26629#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,432 INFO L290 TraceCheckUtils]: 222: Hoare triple {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,433 INFO L290 TraceCheckUtils]: 223: Hoare triple {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,433 INFO L290 TraceCheckUtils]: 224: Hoare triple {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,434 INFO L290 TraceCheckUtils]: 225: Hoare triple {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,434 INFO L290 TraceCheckUtils]: 226: Hoare triple {26631#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,434 INFO L290 TraceCheckUtils]: 227: Hoare triple {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,435 INFO L290 TraceCheckUtils]: 228: Hoare triple {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,435 INFO L290 TraceCheckUtils]: 229: Hoare triple {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,435 INFO L290 TraceCheckUtils]: 230: Hoare triple {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,436 INFO L290 TraceCheckUtils]: 231: Hoare triple {26632#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,436 INFO L290 TraceCheckUtils]: 232: Hoare triple {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,437 INFO L290 TraceCheckUtils]: 233: Hoare triple {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,437 INFO L290 TraceCheckUtils]: 234: Hoare triple {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,438 INFO L290 TraceCheckUtils]: 235: Hoare triple {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,438 INFO L290 TraceCheckUtils]: 236: Hoare triple {26633#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,438 INFO L290 TraceCheckUtils]: 237: Hoare triple {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,439 INFO L290 TraceCheckUtils]: 238: Hoare triple {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,439 INFO L290 TraceCheckUtils]: 239: Hoare triple {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,440 INFO L290 TraceCheckUtils]: 240: Hoare triple {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,440 INFO L290 TraceCheckUtils]: 241: Hoare triple {26634#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,440 INFO L290 TraceCheckUtils]: 242: Hoare triple {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,441 INFO L290 TraceCheckUtils]: 243: Hoare triple {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,441 INFO L290 TraceCheckUtils]: 244: Hoare triple {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,442 INFO L290 TraceCheckUtils]: 245: Hoare triple {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,442 INFO L290 TraceCheckUtils]: 246: Hoare triple {26635#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,442 INFO L290 TraceCheckUtils]: 247: Hoare triple {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,443 INFO L290 TraceCheckUtils]: 248: Hoare triple {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,443 INFO L290 TraceCheckUtils]: 249: Hoare triple {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,444 INFO L290 TraceCheckUtils]: 250: Hoare triple {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:25,444 INFO L290 TraceCheckUtils]: 251: Hoare triple {26636#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26637#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,444 INFO L290 TraceCheckUtils]: 252: Hoare triple {26637#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,445 INFO L290 TraceCheckUtils]: 253: Hoare triple {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,445 INFO L290 TraceCheckUtils]: 254: Hoare triple {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,446 INFO L290 TraceCheckUtils]: 255: Hoare triple {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,446 INFO L290 TraceCheckUtils]: 256: Hoare triple {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,446 INFO L290 TraceCheckUtils]: 257: Hoare triple {26638#(and (<= 5 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,447 INFO L290 TraceCheckUtils]: 258: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,447 INFO L290 TraceCheckUtils]: 259: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,447 INFO L290 TraceCheckUtils]: 260: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,448 INFO L290 TraceCheckUtils]: 261: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,448 INFO L290 TraceCheckUtils]: 262: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:25,448 INFO L290 TraceCheckUtils]: 263: Hoare triple {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,449 INFO L290 TraceCheckUtils]: 264: Hoare triple {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,449 INFO L290 TraceCheckUtils]: 265: Hoare triple {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,450 INFO L290 TraceCheckUtils]: 266: Hoare triple {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,450 INFO L290 TraceCheckUtils]: 267: Hoare triple {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:25,450 INFO L290 TraceCheckUtils]: 268: Hoare triple {26641#(and (<= 6 |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,451 INFO L290 TraceCheckUtils]: 269: Hoare triple {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,451 INFO L290 TraceCheckUtils]: 270: Hoare triple {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,452 INFO L290 TraceCheckUtils]: 271: Hoare triple {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,452 INFO L290 TraceCheckUtils]: 272: Hoare triple {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,453 INFO L290 TraceCheckUtils]: 273: Hoare triple {26642#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,453 INFO L290 TraceCheckUtils]: 274: Hoare triple {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,453 INFO L290 TraceCheckUtils]: 275: Hoare triple {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,454 INFO L290 TraceCheckUtils]: 276: Hoare triple {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,454 INFO L290 TraceCheckUtils]: 277: Hoare triple {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,455 INFO L290 TraceCheckUtils]: 278: Hoare triple {26643#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,455 INFO L290 TraceCheckUtils]: 279: Hoare triple {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,455 INFO L290 TraceCheckUtils]: 280: Hoare triple {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,456 INFO L290 TraceCheckUtils]: 281: Hoare triple {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,456 INFO L290 TraceCheckUtils]: 282: Hoare triple {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,457 INFO L290 TraceCheckUtils]: 283: Hoare triple {26644#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:25,457 INFO L290 TraceCheckUtils]: 284: Hoare triple {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:25,457 INFO L290 TraceCheckUtils]: 285: Hoare triple {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:25,458 INFO L290 TraceCheckUtils]: 286: Hoare triple {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:25,458 INFO L290 TraceCheckUtils]: 287: Hoare triple {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:25,459 INFO L290 TraceCheckUtils]: 288: Hoare triple {26645#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,459 INFO L290 TraceCheckUtils]: 289: Hoare triple {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,459 INFO L290 TraceCheckUtils]: 290: Hoare triple {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,460 INFO L290 TraceCheckUtils]: 291: Hoare triple {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,460 INFO L290 TraceCheckUtils]: 292: Hoare triple {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,461 INFO L290 TraceCheckUtils]: 293: Hoare triple {26646#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,461 INFO L290 TraceCheckUtils]: 294: Hoare triple {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,461 INFO L290 TraceCheckUtils]: 295: Hoare triple {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,462 INFO L290 TraceCheckUtils]: 296: Hoare triple {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,462 INFO L290 TraceCheckUtils]: 297: Hoare triple {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 298: Hoare triple {26647#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26648#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 299: Hoare triple {26648#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 300: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 301: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 302: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:25,463 INFO L290 TraceCheckUtils]: 303: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 304: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 305: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 306: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 307: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 308: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 309: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 310: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 311: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,464 INFO L290 TraceCheckUtils]: 312: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 313: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 314: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 315: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 316: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 317: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 318: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 319: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 320: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,465 INFO L290 TraceCheckUtils]: 321: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 322: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 323: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 324: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 325: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 326: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 327: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 328: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 329: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,466 INFO L290 TraceCheckUtils]: 330: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 331: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 332: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 333: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 334: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 335: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 336: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 337: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 338: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,467 INFO L290 TraceCheckUtils]: 339: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 340: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 341: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 342: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 343: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 344: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 345: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 346: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 347: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,468 INFO L290 TraceCheckUtils]: 348: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 349: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 350: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 351: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 352: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 353: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 354: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 355: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 356: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:25,469 INFO L290 TraceCheckUtils]: 357: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:25,470 INFO L290 TraceCheckUtils]: 358: Hoare triple {26630#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {26630#false} is VALID [2022-02-20 23:50:25,473 INFO L134 CoverageAnalysis]: Checked inductivity of 9231 backedges. 5360 proven. 419 refuted. 0 times theorem prover too weak. 3452 trivial. 0 not checked. [2022-02-20 23:50:25,473 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:25,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1813407314] [2022-02-20 23:50:25,474 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1813407314] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:25,474 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [119065840] [2022-02-20 23:50:25,474 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:50:25,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:25,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:25,476 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:25,477 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-02-20 23:50:25,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:25,724 INFO L263 TraceCheckSpWp]: Trace formula consists of 1164 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:50:25,783 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:25,785 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:26,890 INFO L290 TraceCheckUtils]: 0: Hoare triple {26629#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {26629#true} is VALID [2022-02-20 23:50:26,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {26629#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,891 INFO L290 TraceCheckUtils]: 3: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,892 INFO L290 TraceCheckUtils]: 6: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,892 INFO L290 TraceCheckUtils]: 7: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,892 INFO L290 TraceCheckUtils]: 8: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,893 INFO L290 TraceCheckUtils]: 9: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,893 INFO L290 TraceCheckUtils]: 10: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,893 INFO L290 TraceCheckUtils]: 11: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,893 INFO L290 TraceCheckUtils]: 12: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,894 INFO L290 TraceCheckUtils]: 14: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,894 INFO L290 TraceCheckUtils]: 15: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,894 INFO L290 TraceCheckUtils]: 16: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,894 INFO L290 TraceCheckUtils]: 17: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,895 INFO L290 TraceCheckUtils]: 18: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,895 INFO L290 TraceCheckUtils]: 19: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,895 INFO L290 TraceCheckUtils]: 20: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,896 INFO L290 TraceCheckUtils]: 21: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,896 INFO L290 TraceCheckUtils]: 22: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,896 INFO L290 TraceCheckUtils]: 23: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,896 INFO L290 TraceCheckUtils]: 24: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,896 INFO L290 TraceCheckUtils]: 25: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,897 INFO L290 TraceCheckUtils]: 26: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,897 INFO L290 TraceCheckUtils]: 27: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,897 INFO L290 TraceCheckUtils]: 28: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,897 INFO L290 TraceCheckUtils]: 29: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,898 INFO L290 TraceCheckUtils]: 30: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,898 INFO L290 TraceCheckUtils]: 31: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,898 INFO L290 TraceCheckUtils]: 32: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,898 INFO L290 TraceCheckUtils]: 33: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,898 INFO L290 TraceCheckUtils]: 34: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,899 INFO L290 TraceCheckUtils]: 35: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,899 INFO L290 TraceCheckUtils]: 37: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,899 INFO L290 TraceCheckUtils]: 38: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,900 INFO L290 TraceCheckUtils]: 39: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,900 INFO L290 TraceCheckUtils]: 40: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,900 INFO L290 TraceCheckUtils]: 41: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,900 INFO L290 TraceCheckUtils]: 42: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,901 INFO L290 TraceCheckUtils]: 43: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,901 INFO L290 TraceCheckUtils]: 44: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,901 INFO L290 TraceCheckUtils]: 45: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,901 INFO L290 TraceCheckUtils]: 46: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,902 INFO L290 TraceCheckUtils]: 47: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,902 INFO L290 TraceCheckUtils]: 48: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,902 INFO L290 TraceCheckUtils]: 49: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,902 INFO L290 TraceCheckUtils]: 50: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,902 INFO L290 TraceCheckUtils]: 51: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,903 INFO L290 TraceCheckUtils]: 52: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,903 INFO L290 TraceCheckUtils]: 53: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,903 INFO L290 TraceCheckUtils]: 54: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,903 INFO L290 TraceCheckUtils]: 55: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,904 INFO L290 TraceCheckUtils]: 56: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,904 INFO L290 TraceCheckUtils]: 57: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,904 INFO L290 TraceCheckUtils]: 58: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,904 INFO L290 TraceCheckUtils]: 59: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,905 INFO L290 TraceCheckUtils]: 60: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,905 INFO L290 TraceCheckUtils]: 61: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,905 INFO L290 TraceCheckUtils]: 62: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,905 INFO L290 TraceCheckUtils]: 63: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,905 INFO L290 TraceCheckUtils]: 64: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,906 INFO L290 TraceCheckUtils]: 65: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,906 INFO L290 TraceCheckUtils]: 66: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,906 INFO L290 TraceCheckUtils]: 67: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,907 INFO L290 TraceCheckUtils]: 68: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,907 INFO L290 TraceCheckUtils]: 69: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,907 INFO L290 TraceCheckUtils]: 70: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,907 INFO L290 TraceCheckUtils]: 71: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,907 INFO L290 TraceCheckUtils]: 72: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,908 INFO L290 TraceCheckUtils]: 73: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,908 INFO L290 TraceCheckUtils]: 74: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,908 INFO L290 TraceCheckUtils]: 75: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,908 INFO L290 TraceCheckUtils]: 76: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,909 INFO L290 TraceCheckUtils]: 77: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,909 INFO L290 TraceCheckUtils]: 78: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,909 INFO L290 TraceCheckUtils]: 79: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,909 INFO L290 TraceCheckUtils]: 80: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,909 INFO L290 TraceCheckUtils]: 81: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,910 INFO L290 TraceCheckUtils]: 82: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,910 INFO L290 TraceCheckUtils]: 83: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,910 INFO L290 TraceCheckUtils]: 84: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,910 INFO L290 TraceCheckUtils]: 85: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,911 INFO L290 TraceCheckUtils]: 86: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,911 INFO L290 TraceCheckUtils]: 87: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,911 INFO L290 TraceCheckUtils]: 88: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,911 INFO L290 TraceCheckUtils]: 89: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,912 INFO L290 TraceCheckUtils]: 90: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,912 INFO L290 TraceCheckUtils]: 91: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,912 INFO L290 TraceCheckUtils]: 92: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,912 INFO L290 TraceCheckUtils]: 93: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,912 INFO L290 TraceCheckUtils]: 94: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,913 INFO L290 TraceCheckUtils]: 95: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,913 INFO L290 TraceCheckUtils]: 96: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,913 INFO L290 TraceCheckUtils]: 97: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,913 INFO L290 TraceCheckUtils]: 98: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,914 INFO L290 TraceCheckUtils]: 99: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,914 INFO L290 TraceCheckUtils]: 100: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,914 INFO L290 TraceCheckUtils]: 101: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,914 INFO L290 TraceCheckUtils]: 102: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,915 INFO L290 TraceCheckUtils]: 103: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,915 INFO L290 TraceCheckUtils]: 104: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,915 INFO L290 TraceCheckUtils]: 105: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,915 INFO L290 TraceCheckUtils]: 106: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,916 INFO L290 TraceCheckUtils]: 107: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,916 INFO L290 TraceCheckUtils]: 108: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,916 INFO L290 TraceCheckUtils]: 109: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,916 INFO L290 TraceCheckUtils]: 110: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,917 INFO L290 TraceCheckUtils]: 111: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,917 INFO L290 TraceCheckUtils]: 112: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,917 INFO L290 TraceCheckUtils]: 113: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,918 INFO L290 TraceCheckUtils]: 114: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,918 INFO L290 TraceCheckUtils]: 115: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,918 INFO L290 TraceCheckUtils]: 116: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,919 INFO L290 TraceCheckUtils]: 117: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,919 INFO L290 TraceCheckUtils]: 118: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,919 INFO L290 TraceCheckUtils]: 119: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,919 INFO L290 TraceCheckUtils]: 120: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,920 INFO L290 TraceCheckUtils]: 121: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,920 INFO L290 TraceCheckUtils]: 122: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,920 INFO L290 TraceCheckUtils]: 123: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,920 INFO L290 TraceCheckUtils]: 124: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,921 INFO L290 TraceCheckUtils]: 125: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,921 INFO L290 TraceCheckUtils]: 126: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,921 INFO L290 TraceCheckUtils]: 127: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,921 INFO L290 TraceCheckUtils]: 128: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,921 INFO L290 TraceCheckUtils]: 129: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,922 INFO L290 TraceCheckUtils]: 130: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,922 INFO L290 TraceCheckUtils]: 131: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,922 INFO L290 TraceCheckUtils]: 132: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,922 INFO L290 TraceCheckUtils]: 133: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,923 INFO L290 TraceCheckUtils]: 134: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,923 INFO L290 TraceCheckUtils]: 135: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,923 INFO L290 TraceCheckUtils]: 136: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,923 INFO L290 TraceCheckUtils]: 137: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,924 INFO L290 TraceCheckUtils]: 138: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,924 INFO L290 TraceCheckUtils]: 139: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,924 INFO L290 TraceCheckUtils]: 140: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,925 INFO L290 TraceCheckUtils]: 141: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,925 INFO L290 TraceCheckUtils]: 142: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,925 INFO L290 TraceCheckUtils]: 143: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,925 INFO L290 TraceCheckUtils]: 144: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,926 INFO L290 TraceCheckUtils]: 145: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,926 INFO L290 TraceCheckUtils]: 146: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,926 INFO L290 TraceCheckUtils]: 147: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,926 INFO L290 TraceCheckUtils]: 148: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,927 INFO L290 TraceCheckUtils]: 149: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,927 INFO L290 TraceCheckUtils]: 150: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,927 INFO L290 TraceCheckUtils]: 151: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,928 INFO L290 TraceCheckUtils]: 152: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,928 INFO L290 TraceCheckUtils]: 153: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,928 INFO L290 TraceCheckUtils]: 154: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,928 INFO L290 TraceCheckUtils]: 155: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,931 INFO L290 TraceCheckUtils]: 156: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,932 INFO L290 TraceCheckUtils]: 157: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,932 INFO L290 TraceCheckUtils]: 158: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,932 INFO L290 TraceCheckUtils]: 159: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,933 INFO L290 TraceCheckUtils]: 160: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,933 INFO L290 TraceCheckUtils]: 161: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,933 INFO L290 TraceCheckUtils]: 162: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,933 INFO L290 TraceCheckUtils]: 163: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,934 INFO L290 TraceCheckUtils]: 164: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,934 INFO L290 TraceCheckUtils]: 165: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,934 INFO L290 TraceCheckUtils]: 166: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,935 INFO L290 TraceCheckUtils]: 167: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,935 INFO L290 TraceCheckUtils]: 168: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,936 INFO L290 TraceCheckUtils]: 169: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,936 INFO L290 TraceCheckUtils]: 170: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,936 INFO L290 TraceCheckUtils]: 171: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,936 INFO L290 TraceCheckUtils]: 172: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,937 INFO L290 TraceCheckUtils]: 173: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,937 INFO L290 TraceCheckUtils]: 174: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,937 INFO L290 TraceCheckUtils]: 175: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,938 INFO L290 TraceCheckUtils]: 176: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,938 INFO L290 TraceCheckUtils]: 177: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,938 INFO L290 TraceCheckUtils]: 178: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:26,939 INFO L290 TraceCheckUtils]: 179: Hoare triple {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:26,939 INFO L290 TraceCheckUtils]: 180: Hoare triple {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:26,939 INFO L290 TraceCheckUtils]: 181: Hoare triple {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:26,940 INFO L290 TraceCheckUtils]: 182: Hoare triple {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:26,940 INFO L290 TraceCheckUtils]: 183: Hoare triple {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:26,941 INFO L290 TraceCheckUtils]: 184: Hoare triple {27194#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:26,941 INFO L290 TraceCheckUtils]: 185: Hoare triple {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:26,941 INFO L290 TraceCheckUtils]: 186: Hoare triple {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:26,942 INFO L290 TraceCheckUtils]: 187: Hoare triple {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:26,942 INFO L290 TraceCheckUtils]: 188: Hoare triple {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:26,943 INFO L290 TraceCheckUtils]: 189: Hoare triple {27210#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:26,943 INFO L290 TraceCheckUtils]: 190: Hoare triple {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:26,943 INFO L290 TraceCheckUtils]: 191: Hoare triple {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:26,944 INFO L290 TraceCheckUtils]: 192: Hoare triple {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:26,944 INFO L290 TraceCheckUtils]: 193: Hoare triple {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:26,945 INFO L290 TraceCheckUtils]: 194: Hoare triple {27226#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:26,945 INFO L290 TraceCheckUtils]: 195: Hoare triple {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:26,945 INFO L290 TraceCheckUtils]: 196: Hoare triple {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:26,946 INFO L290 TraceCheckUtils]: 197: Hoare triple {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:26,946 INFO L290 TraceCheckUtils]: 198: Hoare triple {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:26,946 INFO L290 TraceCheckUtils]: 199: Hoare triple {27242#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,947 INFO L290 TraceCheckUtils]: 200: Hoare triple {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,947 INFO L290 TraceCheckUtils]: 201: Hoare triple {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,948 INFO L290 TraceCheckUtils]: 202: Hoare triple {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,948 INFO L290 TraceCheckUtils]: 203: Hoare triple {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,948 INFO L290 TraceCheckUtils]: 204: Hoare triple {27258#(and (<= |ULTIMATE.start_foo_~i~0#1| 4) (<= 6 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:26,949 INFO L290 TraceCheckUtils]: 205: Hoare triple {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:26,949 INFO L290 TraceCheckUtils]: 206: Hoare triple {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:26,949 INFO L290 TraceCheckUtils]: 207: Hoare triple {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:26,950 INFO L290 TraceCheckUtils]: 208: Hoare triple {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:26,950 INFO L290 TraceCheckUtils]: 209: Hoare triple {27274#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:26,951 INFO L290 TraceCheckUtils]: 210: Hoare triple {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:26,951 INFO L290 TraceCheckUtils]: 211: Hoare triple {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:26,952 INFO L290 TraceCheckUtils]: 212: Hoare triple {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:26,952 INFO L290 TraceCheckUtils]: 213: Hoare triple {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 214: Hoare triple {27290#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {27306#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 6 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 215: Hoare triple {27306#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 6 |ULTIMATE.start_foo_~size#1|))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 216: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 217: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 218: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:26,953 INFO L290 TraceCheckUtils]: 219: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:26,954 INFO L290 TraceCheckUtils]: 220: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:26,954 INFO L290 TraceCheckUtils]: 221: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:26,954 INFO L290 TraceCheckUtils]: 222: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,954 INFO L290 TraceCheckUtils]: 223: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 224: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 225: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 226: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 227: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 228: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,955 INFO L290 TraceCheckUtils]: 229: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 230: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 231: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 232: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 233: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 234: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 235: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 236: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,956 INFO L290 TraceCheckUtils]: 237: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 238: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 239: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 240: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 241: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 242: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 243: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 244: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 245: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,957 INFO L290 TraceCheckUtils]: 246: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 247: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 248: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 249: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 250: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 251: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 252: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 253: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 254: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,958 INFO L290 TraceCheckUtils]: 255: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 256: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 257: Hoare triple {26630#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 258: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 259: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 260: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 261: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 262: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:26,959 INFO L290 TraceCheckUtils]: 263: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 264: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 265: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 266: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 267: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 268: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 269: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 270: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,960 INFO L290 TraceCheckUtils]: 271: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 272: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 273: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 274: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 275: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 276: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 277: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 278: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,961 INFO L290 TraceCheckUtils]: 279: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 280: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 281: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 282: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 283: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 284: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 285: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 286: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 287: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,962 INFO L290 TraceCheckUtils]: 288: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 289: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 290: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 291: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 292: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 293: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 294: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 295: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 296: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,963 INFO L290 TraceCheckUtils]: 297: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 298: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 299: Hoare triple {26630#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 300: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 301: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 302: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 303: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 304: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 305: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:26,964 INFO L290 TraceCheckUtils]: 306: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 307: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 308: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 309: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 310: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 311: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 312: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 313: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 314: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,965 INFO L290 TraceCheckUtils]: 315: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 316: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 317: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 318: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 319: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 320: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 321: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 322: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 323: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,966 INFO L290 TraceCheckUtils]: 324: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 325: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 326: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 327: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 328: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 329: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 330: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 331: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 332: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,967 INFO L290 TraceCheckUtils]: 333: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 334: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 335: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 336: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 337: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 338: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 339: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 340: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 341: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,968 INFO L290 TraceCheckUtils]: 342: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 343: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 344: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 345: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 346: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 347: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 348: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 349: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 350: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,969 INFO L290 TraceCheckUtils]: 351: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 352: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 353: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 354: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 355: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 356: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 357: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:26,970 INFO L290 TraceCheckUtils]: 358: Hoare triple {26630#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {26630#false} is VALID [2022-02-20 23:50:26,972 INFO L134 CoverageAnalysis]: Checked inductivity of 9231 backedges. 6271 proven. 1132 refuted. 0 times theorem prover too weak. 1828 trivial. 0 not checked. [2022-02-20 23:50:26,972 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:27,707 INFO L290 TraceCheckUtils]: 358: Hoare triple {26630#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 357: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 356: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 355: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 354: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 353: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,708 INFO L290 TraceCheckUtils]: 352: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 351: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 350: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 349: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 348: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 347: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 346: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 345: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 344: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,709 INFO L290 TraceCheckUtils]: 343: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 342: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 341: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 340: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 339: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 338: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 337: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 336: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 335: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,710 INFO L290 TraceCheckUtils]: 334: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 333: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 332: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 331: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 330: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 329: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 328: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 327: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 326: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,711 INFO L290 TraceCheckUtils]: 325: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 324: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 323: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 322: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 321: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 320: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 319: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 318: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 317: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,712 INFO L290 TraceCheckUtils]: 316: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 315: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 314: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 313: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 312: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 311: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 310: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 309: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 308: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,713 INFO L290 TraceCheckUtils]: 307: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 306: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 305: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 304: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 303: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 302: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 301: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 300: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 299: Hoare triple {26630#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,714 INFO L290 TraceCheckUtils]: 298: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 297: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 296: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 295: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 294: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 293: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 292: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 291: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 290: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,715 INFO L290 TraceCheckUtils]: 289: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 288: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 287: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 286: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 285: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 284: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 283: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 282: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 281: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,716 INFO L290 TraceCheckUtils]: 280: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 279: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 278: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 277: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 276: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 275: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 274: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 273: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 272: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,717 INFO L290 TraceCheckUtils]: 271: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 270: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 269: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 268: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 267: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 266: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 265: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 264: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,718 INFO L290 TraceCheckUtils]: 263: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 262: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 261: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 260: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 259: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 258: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 257: Hoare triple {26630#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 256: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 255: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,719 INFO L290 TraceCheckUtils]: 254: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 253: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 252: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 251: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 250: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 249: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 248: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 247: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 246: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,720 INFO L290 TraceCheckUtils]: 245: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 244: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 243: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 242: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 241: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 240: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 239: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 238: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 237: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,721 INFO L290 TraceCheckUtils]: 236: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 235: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 234: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 233: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 232: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 231: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 230: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 229: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 228: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,722 INFO L290 TraceCheckUtils]: 227: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 226: Hoare triple {26630#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 225: Hoare triple {26630#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 224: Hoare triple {26630#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 223: Hoare triple {26630#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 222: Hoare triple {26630#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 221: Hoare triple {26630#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 220: Hoare triple {26630#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 219: Hoare triple {26630#false} havoc main_#t~ret3#1; {26630#false} is VALID [2022-02-20 23:50:27,723 INFO L290 TraceCheckUtils]: 218: Hoare triple {26630#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26630#false} is VALID [2022-02-20 23:50:27,724 INFO L290 TraceCheckUtils]: 217: Hoare triple {26630#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26630#false} is VALID [2022-02-20 23:50:27,724 INFO L290 TraceCheckUtils]: 216: Hoare triple {26630#false} foo_#res#1 := foo_~i~0#1; {26630#false} is VALID [2022-02-20 23:50:27,724 INFO L290 TraceCheckUtils]: 215: Hoare triple {28168#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26630#false} is VALID [2022-02-20 23:50:27,725 INFO L290 TraceCheckUtils]: 214: Hoare triple {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28168#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:50:27,725 INFO L290 TraceCheckUtils]: 213: Hoare triple {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,725 INFO L290 TraceCheckUtils]: 212: Hoare triple {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,725 INFO L290 TraceCheckUtils]: 211: Hoare triple {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,726 INFO L290 TraceCheckUtils]: 210: Hoare triple {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,726 INFO L290 TraceCheckUtils]: 209: Hoare triple {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28172#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,726 INFO L290 TraceCheckUtils]: 208: Hoare triple {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,727 INFO L290 TraceCheckUtils]: 207: Hoare triple {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,727 INFO L290 TraceCheckUtils]: 206: Hoare triple {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,727 INFO L290 TraceCheckUtils]: 205: Hoare triple {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,728 INFO L290 TraceCheckUtils]: 204: Hoare triple {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28188#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,728 INFO L290 TraceCheckUtils]: 203: Hoare triple {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,728 INFO L290 TraceCheckUtils]: 202: Hoare triple {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,729 INFO L290 TraceCheckUtils]: 201: Hoare triple {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,729 INFO L290 TraceCheckUtils]: 200: Hoare triple {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,729 INFO L290 TraceCheckUtils]: 199: Hoare triple {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28204#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,730 INFO L290 TraceCheckUtils]: 198: Hoare triple {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,730 INFO L290 TraceCheckUtils]: 197: Hoare triple {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,730 INFO L290 TraceCheckUtils]: 196: Hoare triple {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,731 INFO L290 TraceCheckUtils]: 195: Hoare triple {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,731 INFO L290 TraceCheckUtils]: 194: Hoare triple {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28220#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,731 INFO L290 TraceCheckUtils]: 193: Hoare triple {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,732 INFO L290 TraceCheckUtils]: 192: Hoare triple {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,732 INFO L290 TraceCheckUtils]: 191: Hoare triple {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,732 INFO L290 TraceCheckUtils]: 190: Hoare triple {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,733 INFO L290 TraceCheckUtils]: 189: Hoare triple {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28236#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,733 INFO L290 TraceCheckUtils]: 188: Hoare triple {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,733 INFO L290 TraceCheckUtils]: 187: Hoare triple {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,734 INFO L290 TraceCheckUtils]: 186: Hoare triple {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,734 INFO L290 TraceCheckUtils]: 185: Hoare triple {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,734 INFO L290 TraceCheckUtils]: 184: Hoare triple {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {28252#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,735 INFO L290 TraceCheckUtils]: 183: Hoare triple {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,735 INFO L290 TraceCheckUtils]: 182: Hoare triple {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,735 INFO L290 TraceCheckUtils]: 181: Hoare triple {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,736 INFO L290 TraceCheckUtils]: 180: Hoare triple {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,736 INFO L290 TraceCheckUtils]: 179: Hoare triple {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {28268#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:27,737 INFO L290 TraceCheckUtils]: 178: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26640#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,737 INFO L290 TraceCheckUtils]: 177: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,737 INFO L290 TraceCheckUtils]: 176: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,737 INFO L290 TraceCheckUtils]: 175: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,738 INFO L290 TraceCheckUtils]: 174: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,738 INFO L290 TraceCheckUtils]: 173: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,738 INFO L290 TraceCheckUtils]: 172: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,738 INFO L290 TraceCheckUtils]: 171: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,739 INFO L290 TraceCheckUtils]: 170: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,739 INFO L290 TraceCheckUtils]: 169: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,739 INFO L290 TraceCheckUtils]: 168: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,740 INFO L290 TraceCheckUtils]: 167: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,740 INFO L290 TraceCheckUtils]: 166: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,740 INFO L290 TraceCheckUtils]: 165: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,740 INFO L290 TraceCheckUtils]: 164: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,741 INFO L290 TraceCheckUtils]: 163: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,741 INFO L290 TraceCheckUtils]: 162: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,741 INFO L290 TraceCheckUtils]: 161: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,741 INFO L290 TraceCheckUtils]: 160: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,742 INFO L290 TraceCheckUtils]: 159: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,742 INFO L290 TraceCheckUtils]: 158: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,742 INFO L290 TraceCheckUtils]: 157: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,742 INFO L290 TraceCheckUtils]: 156: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,743 INFO L290 TraceCheckUtils]: 155: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,743 INFO L290 TraceCheckUtils]: 154: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,743 INFO L290 TraceCheckUtils]: 153: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,744 INFO L290 TraceCheckUtils]: 152: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,744 INFO L290 TraceCheckUtils]: 151: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,744 INFO L290 TraceCheckUtils]: 150: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,744 INFO L290 TraceCheckUtils]: 149: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,745 INFO L290 TraceCheckUtils]: 148: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,745 INFO L290 TraceCheckUtils]: 147: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,745 INFO L290 TraceCheckUtils]: 146: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,745 INFO L290 TraceCheckUtils]: 145: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,746 INFO L290 TraceCheckUtils]: 144: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,746 INFO L290 TraceCheckUtils]: 143: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,746 INFO L290 TraceCheckUtils]: 142: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,747 INFO L290 TraceCheckUtils]: 141: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,747 INFO L290 TraceCheckUtils]: 140: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,747 INFO L290 TraceCheckUtils]: 139: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,747 INFO L290 TraceCheckUtils]: 138: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,748 INFO L290 TraceCheckUtils]: 137: Hoare triple {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,748 INFO L290 TraceCheckUtils]: 136: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26639#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,748 INFO L290 TraceCheckUtils]: 135: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,749 INFO L290 TraceCheckUtils]: 134: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,749 INFO L290 TraceCheckUtils]: 133: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,749 INFO L290 TraceCheckUtils]: 132: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,749 INFO L290 TraceCheckUtils]: 131: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,750 INFO L290 TraceCheckUtils]: 130: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,750 INFO L290 TraceCheckUtils]: 129: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,750 INFO L290 TraceCheckUtils]: 128: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,750 INFO L290 TraceCheckUtils]: 127: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,751 INFO L290 TraceCheckUtils]: 126: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,751 INFO L290 TraceCheckUtils]: 125: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,751 INFO L290 TraceCheckUtils]: 124: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,752 INFO L290 TraceCheckUtils]: 123: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,752 INFO L290 TraceCheckUtils]: 122: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,752 INFO L290 TraceCheckUtils]: 121: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,752 INFO L290 TraceCheckUtils]: 120: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,753 INFO L290 TraceCheckUtils]: 119: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,753 INFO L290 TraceCheckUtils]: 118: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,753 INFO L290 TraceCheckUtils]: 117: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,754 INFO L290 TraceCheckUtils]: 116: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,754 INFO L290 TraceCheckUtils]: 115: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,754 INFO L290 TraceCheckUtils]: 114: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,754 INFO L290 TraceCheckUtils]: 113: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,755 INFO L290 TraceCheckUtils]: 112: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,755 INFO L290 TraceCheckUtils]: 111: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,755 INFO L290 TraceCheckUtils]: 110: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,755 INFO L290 TraceCheckUtils]: 109: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,756 INFO L290 TraceCheckUtils]: 108: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,756 INFO L290 TraceCheckUtils]: 107: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,756 INFO L290 TraceCheckUtils]: 106: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,757 INFO L290 TraceCheckUtils]: 105: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,757 INFO L290 TraceCheckUtils]: 104: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,757 INFO L290 TraceCheckUtils]: 103: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,757 INFO L290 TraceCheckUtils]: 102: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,758 INFO L290 TraceCheckUtils]: 101: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,758 INFO L290 TraceCheckUtils]: 100: Hoare triple {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,758 INFO L290 TraceCheckUtils]: 99: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26953#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,759 INFO L290 TraceCheckUtils]: 98: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,759 INFO L290 TraceCheckUtils]: 97: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,759 INFO L290 TraceCheckUtils]: 96: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,760 INFO L290 TraceCheckUtils]: 95: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,760 INFO L290 TraceCheckUtils]: 94: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,760 INFO L290 TraceCheckUtils]: 93: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,760 INFO L290 TraceCheckUtils]: 92: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,761 INFO L290 TraceCheckUtils]: 91: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,761 INFO L290 TraceCheckUtils]: 90: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,761 INFO L290 TraceCheckUtils]: 89: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,761 INFO L290 TraceCheckUtils]: 88: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,762 INFO L290 TraceCheckUtils]: 87: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,762 INFO L290 TraceCheckUtils]: 86: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,762 INFO L290 TraceCheckUtils]: 85: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,762 INFO L290 TraceCheckUtils]: 84: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,763 INFO L290 TraceCheckUtils]: 83: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,763 INFO L290 TraceCheckUtils]: 82: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,763 INFO L290 TraceCheckUtils]: 81: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,764 INFO L290 TraceCheckUtils]: 80: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,764 INFO L290 TraceCheckUtils]: 79: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,764 INFO L290 TraceCheckUtils]: 78: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,764 INFO L290 TraceCheckUtils]: 77: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,765 INFO L290 TraceCheckUtils]: 76: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,765 INFO L290 TraceCheckUtils]: 75: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,765 INFO L290 TraceCheckUtils]: 74: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,766 INFO L290 TraceCheckUtils]: 73: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,766 INFO L290 TraceCheckUtils]: 72: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,766 INFO L290 TraceCheckUtils]: 71: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,766 INFO L290 TraceCheckUtils]: 70: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,767 INFO L290 TraceCheckUtils]: 69: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,767 INFO L290 TraceCheckUtils]: 68: Hoare triple {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,767 INFO L290 TraceCheckUtils]: 67: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26856#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,768 INFO L290 TraceCheckUtils]: 66: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,768 INFO L290 TraceCheckUtils]: 65: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,768 INFO L290 TraceCheckUtils]: 64: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,768 INFO L290 TraceCheckUtils]: 63: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,769 INFO L290 TraceCheckUtils]: 62: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,769 INFO L290 TraceCheckUtils]: 61: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,769 INFO L290 TraceCheckUtils]: 60: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,769 INFO L290 TraceCheckUtils]: 59: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,770 INFO L290 TraceCheckUtils]: 58: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,770 INFO L290 TraceCheckUtils]: 57: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,770 INFO L290 TraceCheckUtils]: 56: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,771 INFO L290 TraceCheckUtils]: 55: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,771 INFO L290 TraceCheckUtils]: 54: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,771 INFO L290 TraceCheckUtils]: 53: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,771 INFO L290 TraceCheckUtils]: 52: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,772 INFO L290 TraceCheckUtils]: 51: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,772 INFO L290 TraceCheckUtils]: 50: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,772 INFO L290 TraceCheckUtils]: 49: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,772 INFO L290 TraceCheckUtils]: 48: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,773 INFO L290 TraceCheckUtils]: 47: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,773 INFO L290 TraceCheckUtils]: 46: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,773 INFO L290 TraceCheckUtils]: 45: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,774 INFO L290 TraceCheckUtils]: 44: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,774 INFO L290 TraceCheckUtils]: 43: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,774 INFO L290 TraceCheckUtils]: 42: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,774 INFO L290 TraceCheckUtils]: 41: Hoare triple {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,775 INFO L290 TraceCheckUtils]: 40: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26774#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,775 INFO L290 TraceCheckUtils]: 39: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,776 INFO L290 TraceCheckUtils]: 37: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,776 INFO L290 TraceCheckUtils]: 36: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,776 INFO L290 TraceCheckUtils]: 35: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,776 INFO L290 TraceCheckUtils]: 34: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,777 INFO L290 TraceCheckUtils]: 33: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,777 INFO L290 TraceCheckUtils]: 32: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,777 INFO L290 TraceCheckUtils]: 31: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,777 INFO L290 TraceCheckUtils]: 30: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,778 INFO L290 TraceCheckUtils]: 29: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,778 INFO L290 TraceCheckUtils]: 28: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,778 INFO L290 TraceCheckUtils]: 27: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,779 INFO L290 TraceCheckUtils]: 25: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,779 INFO L290 TraceCheckUtils]: 24: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,779 INFO L290 TraceCheckUtils]: 23: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,780 INFO L290 TraceCheckUtils]: 22: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,780 INFO L290 TraceCheckUtils]: 21: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,780 INFO L290 TraceCheckUtils]: 20: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,781 INFO L290 TraceCheckUtils]: 18: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {26707#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,781 INFO L290 TraceCheckUtils]: 17: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,781 INFO L290 TraceCheckUtils]: 16: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,782 INFO L290 TraceCheckUtils]: 15: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,782 INFO L290 TraceCheckUtils]: 14: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,782 INFO L290 TraceCheckUtils]: 12: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,783 INFO L290 TraceCheckUtils]: 11: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,783 INFO L290 TraceCheckUtils]: 9: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,784 INFO L290 TraceCheckUtils]: 6: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,784 INFO L290 TraceCheckUtils]: 5: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,785 INFO L290 TraceCheckUtils]: 4: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,785 INFO L290 TraceCheckUtils]: 3: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {26629#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {26655#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:27,786 INFO L290 TraceCheckUtils]: 0: Hoare triple {26629#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {26629#true} is VALID [2022-02-20 23:50:27,787 INFO L134 CoverageAnalysis]: Checked inductivity of 9231 backedges. 6271 proven. 1132 refuted. 0 times theorem prover too weak. 1828 trivial. 0 not checked. [2022-02-20 23:50:27,787 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [119065840] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:27,787 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:27,787 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 17, 17] total 41 [2022-02-20 23:50:27,787 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [454880906] [2022-02-20 23:50:27,788 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:27,788 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 359 [2022-02-20 23:50:27,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:27,789 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 23:50:27,965 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 248 edges. 248 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:27,965 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-02-20 23:50:27,966 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:27,966 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-02-20 23:50:27,966 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=294, Invalid=1346, Unknown=0, NotChecked=0, Total=1640 [2022-02-20 23:50:27,967 INFO L87 Difference]: Start difference. First operand 390 states and 400 transitions. Second operand has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 23:50:30,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:30,690 INFO L93 Difference]: Finished difference Result 390 states and 396 transitions. [2022-02-20 23:50:30,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 52 states. [2022-02-20 23:50:30,691 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 359 [2022-02-20 23:50:30,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:30,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 23:50:30,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 233 transitions. [2022-02-20 23:50:30,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 23:50:30,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 233 transitions. [2022-02-20 23:50:30,694 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 52 states and 233 transitions. [2022-02-20 23:50:30,826 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:30,832 INFO L225 Difference]: With dead ends: 390 [2022-02-20 23:50:30,832 INFO L226 Difference]: Without dead ends: 390 [2022-02-20 23:50:30,833 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 779 GetRequests, 698 SyntacticMatches, 0 SemanticMatches, 81 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1487 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=1270, Invalid=5536, Unknown=0, NotChecked=0, Total=6806 [2022-02-20 23:50:30,834 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 140 mSDsluCounter, 164 mSDsCounter, 0 mSdLazyCounter, 2035 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 2062 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 2035 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:30,834 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [140 Valid, 180 Invalid, 2062 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 2035 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 23:50:30,835 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-02-20 23:50:30,838 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 390. [2022-02-20 23:50:30,839 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:30,839 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 23:50:30,840 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 23:50:30,840 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 23:50:30,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:30,845 INFO L93 Difference]: Finished difference Result 390 states and 396 transitions. [2022-02-20 23:50:30,846 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 396 transitions. [2022-02-20 23:50:30,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:30,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:30,847 INFO L74 IsIncluded]: Start isIncluded. First operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 390 states. [2022-02-20 23:50:30,847 INFO L87 Difference]: Start difference. First operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 390 states. [2022-02-20 23:50:30,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:30,853 INFO L93 Difference]: Finished difference Result 390 states and 396 transitions. [2022-02-20 23:50:30,853 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 396 transitions. [2022-02-20 23:50:30,853 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:30,853 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:30,854 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:30,854 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:30,854 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 390 states, 389 states have (on average 1.0179948586118253) internal successors, (396), 389 states have internal predecessors, (396), 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 23:50:30,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 396 transitions. [2022-02-20 23:50:30,859 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 396 transitions. Word has length 359 [2022-02-20 23:50:30,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:30,859 INFO L470 AbstractCegarLoop]: Abstraction has 390 states and 396 transitions. [2022-02-20 23:50:30,860 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 41 states have (on average 6.048780487804878) internal successors, (248), 41 states have internal predecessors, (248), 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 23:50:30,860 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 396 transitions. [2022-02-20 23:50:30,861 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 375 [2022-02-20 23:50:30,861 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:30,861 INFO L514 BasicCegarLoop]: trace histogram [62, 62, 61, 61, 61, 10, 9, 9, 9, 9, 9, 9, 1, 1, 1] [2022-02-20 23:50:30,884 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-02-20 23:50:31,084 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:31,085 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:31,085 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:31,085 INFO L85 PathProgramCache]: Analyzing trace with hash 1672251698, now seen corresponding path program 8 times [2022-02-20 23:50:31,085 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:31,085 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1172197] [2022-02-20 23:50:31,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:31,086 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:31,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:31,523 INFO L290 TraceCheckUtils]: 0: Hoare triple {30465#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {30465#true} is VALID [2022-02-20 23:50:31,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {30465#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,523 INFO L290 TraceCheckUtils]: 3: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,523 INFO L290 TraceCheckUtils]: 4: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 6: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 7: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 8: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 9: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 10: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 11: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 12: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 13: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 14: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 15: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 16: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,524 INFO L290 TraceCheckUtils]: 17: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 18: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 19: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 20: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 21: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 22: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 23: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 26: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 30: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 31: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 32: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 33: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 34: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,525 INFO L290 TraceCheckUtils]: 35: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 37: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 38: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 39: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 40: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 41: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 42: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 43: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 44: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 45: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 46: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 47: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,526 INFO L290 TraceCheckUtils]: 48: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 49: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 50: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 51: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 52: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 53: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 54: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 55: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 56: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 57: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 58: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 59: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 60: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 61: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,527 INFO L290 TraceCheckUtils]: 62: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 63: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 64: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 65: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 66: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 67: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 68: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 69: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 70: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 71: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 72: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 73: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 74: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 75: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 76: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,528 INFO L290 TraceCheckUtils]: 77: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 78: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 79: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 80: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 81: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 82: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 83: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 84: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 85: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 86: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 87: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 88: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 89: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 90: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 91: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 92: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,529 INFO L290 TraceCheckUtils]: 93: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 94: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 95: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 96: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 97: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 98: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 99: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 100: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 101: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,530 INFO L290 TraceCheckUtils]: 102: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 103: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 104: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 105: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 106: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 107: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 108: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 109: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 110: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,531 INFO L290 TraceCheckUtils]: 111: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 112: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 113: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 114: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 115: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 116: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 117: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 118: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 119: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,532 INFO L290 TraceCheckUtils]: 120: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 121: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 122: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 123: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 124: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 125: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 126: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 127: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 128: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,533 INFO L290 TraceCheckUtils]: 129: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 130: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 131: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 132: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 133: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 134: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 135: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 136: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 137: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,534 INFO L290 TraceCheckUtils]: 138: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 139: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 140: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 141: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 142: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 143: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 144: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 145: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 146: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,535 INFO L290 TraceCheckUtils]: 147: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 148: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 149: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 150: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 151: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 152: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 153: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 154: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 155: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,536 INFO L290 TraceCheckUtils]: 156: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 157: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 158: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 159: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 160: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 161: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 162: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 163: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 164: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,537 INFO L290 TraceCheckUtils]: 165: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 166: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 167: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 168: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 169: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 170: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 171: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 172: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 173: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 174: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,538 INFO L290 TraceCheckUtils]: 175: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 176: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 177: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 178: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 179: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 180: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 181: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 182: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,539 INFO L290 TraceCheckUtils]: 183: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 184: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 185: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 186: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 187: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 188: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 189: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 190: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 191: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 192: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,540 INFO L290 TraceCheckUtils]: 193: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 194: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 195: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 196: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 197: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 198: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 199: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 200: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 201: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,541 INFO L290 TraceCheckUtils]: 202: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 203: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 204: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 205: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 206: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 207: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 208: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 209: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 210: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,542 INFO L290 TraceCheckUtils]: 211: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 212: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 213: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 214: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 215: Hoare triple {30465#true} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 216: Hoare triple {30465#true} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 217: Hoare triple {30465#true} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 218: Hoare triple {30465#true} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 219: Hoare triple {30465#true} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30465#true} is VALID [2022-02-20 23:50:31,543 INFO L290 TraceCheckUtils]: 220: Hoare triple {30465#true} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30465#true} is VALID [2022-02-20 23:50:31,544 INFO L290 TraceCheckUtils]: 221: Hoare triple {30465#true} foo_#res#1 := foo_~i~0#1; {30465#true} is VALID [2022-02-20 23:50:31,544 INFO L290 TraceCheckUtils]: 222: Hoare triple {30465#true} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30465#true} is VALID [2022-02-20 23:50:31,544 INFO L290 TraceCheckUtils]: 223: Hoare triple {30465#true} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30465#true} is VALID [2022-02-20 23:50:31,544 INFO L290 TraceCheckUtils]: 224: Hoare triple {30465#true} havoc main_#t~ret3#1; {30465#true} is VALID [2022-02-20 23:50:31,544 INFO L290 TraceCheckUtils]: 225: Hoare triple {30465#true} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30465#true} is VALID [2022-02-20 23:50:31,545 INFO L290 TraceCheckUtils]: 226: Hoare triple {30465#true} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:31,545 INFO L290 TraceCheckUtils]: 227: Hoare triple {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:31,545 INFO L290 TraceCheckUtils]: 228: Hoare triple {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:31,546 INFO L290 TraceCheckUtils]: 229: Hoare triple {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:31,546 INFO L290 TraceCheckUtils]: 230: Hoare triple {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:31,547 INFO L290 TraceCheckUtils]: 231: Hoare triple {30467#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,547 INFO L290 TraceCheckUtils]: 232: Hoare triple {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,547 INFO L290 TraceCheckUtils]: 233: Hoare triple {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,548 INFO L290 TraceCheckUtils]: 234: Hoare triple {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,548 INFO L290 TraceCheckUtils]: 235: Hoare triple {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,549 INFO L290 TraceCheckUtils]: 236: Hoare triple {30468#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 1 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,549 INFO L290 TraceCheckUtils]: 237: Hoare triple {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,549 INFO L290 TraceCheckUtils]: 238: Hoare triple {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,550 INFO L290 TraceCheckUtils]: 239: Hoare triple {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,550 INFO L290 TraceCheckUtils]: 240: Hoare triple {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,551 INFO L290 TraceCheckUtils]: 241: Hoare triple {30469#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 2 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,551 INFO L290 TraceCheckUtils]: 242: Hoare triple {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,551 INFO L290 TraceCheckUtils]: 243: Hoare triple {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,552 INFO L290 TraceCheckUtils]: 244: Hoare triple {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,552 INFO L290 TraceCheckUtils]: 245: Hoare triple {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,553 INFO L290 TraceCheckUtils]: 246: Hoare triple {30470#(and (<= 3 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,553 INFO L290 TraceCheckUtils]: 247: Hoare triple {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,553 INFO L290 TraceCheckUtils]: 248: Hoare triple {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,554 INFO L290 TraceCheckUtils]: 249: Hoare triple {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,554 INFO L290 TraceCheckUtils]: 250: Hoare triple {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,554 INFO L290 TraceCheckUtils]: 251: Hoare triple {30471#(and (<= 4 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,555 INFO L290 TraceCheckUtils]: 252: Hoare triple {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,555 INFO L290 TraceCheckUtils]: 253: Hoare triple {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,556 INFO L290 TraceCheckUtils]: 254: Hoare triple {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,556 INFO L290 TraceCheckUtils]: 255: Hoare triple {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} is VALID [2022-02-20 23:50:31,557 INFO L290 TraceCheckUtils]: 256: Hoare triple {30472#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 5 |ULTIMATE.start_foo_~i~0#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,557 INFO L290 TraceCheckUtils]: 257: Hoare triple {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,557 INFO L290 TraceCheckUtils]: 258: Hoare triple {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,558 INFO L290 TraceCheckUtils]: 259: Hoare triple {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,558 INFO L290 TraceCheckUtils]: 260: Hoare triple {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,559 INFO L290 TraceCheckUtils]: 261: Hoare triple {30473#(and (<= 6 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30474#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,559 INFO L290 TraceCheckUtils]: 262: Hoare triple {30474#(and (<= 7 |ULTIMATE.start_foo_~i~0#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,559 INFO L290 TraceCheckUtils]: 263: Hoare triple {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,560 INFO L290 TraceCheckUtils]: 264: Hoare triple {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,560 INFO L290 TraceCheckUtils]: 265: Hoare triple {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,579 INFO L290 TraceCheckUtils]: 266: Hoare triple {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,579 INFO L290 TraceCheckUtils]: 267: Hoare triple {30475#(and (<= 6 |ULTIMATE.start_foo_~size#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,580 INFO L290 TraceCheckUtils]: 268: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,580 INFO L290 TraceCheckUtils]: 269: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,580 INFO L290 TraceCheckUtils]: 270: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,580 INFO L290 TraceCheckUtils]: 271: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,581 INFO L290 TraceCheckUtils]: 272: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:31,581 INFO L290 TraceCheckUtils]: 273: Hoare triple {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,582 INFO L290 TraceCheckUtils]: 274: Hoare triple {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,582 INFO L290 TraceCheckUtils]: 275: Hoare triple {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,583 INFO L290 TraceCheckUtils]: 276: Hoare triple {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,583 INFO L290 TraceCheckUtils]: 277: Hoare triple {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,583 INFO L290 TraceCheckUtils]: 278: Hoare triple {30478#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (= |ULTIMATE.start_foo_~i~0#1| 0) (<= 7 |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,584 INFO L290 TraceCheckUtils]: 279: Hoare triple {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,584 INFO L290 TraceCheckUtils]: 280: Hoare triple {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,585 INFO L290 TraceCheckUtils]: 281: Hoare triple {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,585 INFO L290 TraceCheckUtils]: 282: Hoare triple {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,586 INFO L290 TraceCheckUtils]: 283: Hoare triple {30479#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,586 INFO L290 TraceCheckUtils]: 284: Hoare triple {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,586 INFO L290 TraceCheckUtils]: 285: Hoare triple {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,587 INFO L290 TraceCheckUtils]: 286: Hoare triple {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,587 INFO L290 TraceCheckUtils]: 287: Hoare triple {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,588 INFO L290 TraceCheckUtils]: 288: Hoare triple {30480#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,588 INFO L290 TraceCheckUtils]: 289: Hoare triple {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,588 INFO L290 TraceCheckUtils]: 290: Hoare triple {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,589 INFO L290 TraceCheckUtils]: 291: Hoare triple {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,589 INFO L290 TraceCheckUtils]: 292: Hoare triple {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,590 INFO L290 TraceCheckUtils]: 293: Hoare triple {30481#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,590 INFO L290 TraceCheckUtils]: 294: Hoare triple {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,590 INFO L290 TraceCheckUtils]: 295: Hoare triple {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,591 INFO L290 TraceCheckUtils]: 296: Hoare triple {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,591 INFO L290 TraceCheckUtils]: 297: Hoare triple {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,592 INFO L290 TraceCheckUtils]: 298: Hoare triple {30482#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,592 INFO L290 TraceCheckUtils]: 299: Hoare triple {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,592 INFO L290 TraceCheckUtils]: 300: Hoare triple {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,593 INFO L290 TraceCheckUtils]: 301: Hoare triple {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,593 INFO L290 TraceCheckUtils]: 302: Hoare triple {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:31,594 INFO L290 TraceCheckUtils]: 303: Hoare triple {30483#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,594 INFO L290 TraceCheckUtils]: 304: Hoare triple {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,595 INFO L290 TraceCheckUtils]: 305: Hoare triple {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,595 INFO L290 TraceCheckUtils]: 306: Hoare triple {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,595 INFO L290 TraceCheckUtils]: 307: Hoare triple {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,596 INFO L290 TraceCheckUtils]: 308: Hoare triple {30484#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,596 INFO L290 TraceCheckUtils]: 309: Hoare triple {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,597 INFO L290 TraceCheckUtils]: 310: Hoare triple {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,597 INFO L290 TraceCheckUtils]: 311: Hoare triple {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,598 INFO L290 TraceCheckUtils]: 312: Hoare triple {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,598 INFO L290 TraceCheckUtils]: 313: Hoare triple {30485#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30486#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 314: Hoare triple {30486#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 315: Hoare triple {30466#false} foo_#res#1 := foo_~i~0#1; {30466#false} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 316: Hoare triple {30466#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30466#false} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 317: Hoare triple {30466#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30466#false} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 318: Hoare triple {30466#false} havoc main_#t~ret3#1; {30466#false} is VALID [2022-02-20 23:50:31,599 INFO L290 TraceCheckUtils]: 319: Hoare triple {30466#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 320: Hoare triple {30466#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 321: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 322: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 323: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 324: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 325: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,600 INFO L290 TraceCheckUtils]: 326: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 327: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 328: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 329: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 330: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 331: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 332: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,601 INFO L290 TraceCheckUtils]: 333: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 334: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 335: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 336: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 337: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 338: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 339: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,602 INFO L290 TraceCheckUtils]: 340: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 341: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 342: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 343: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 344: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 345: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 346: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,603 INFO L290 TraceCheckUtils]: 347: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 348: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 349: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 350: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 351: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 352: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 353: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 354: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,604 INFO L290 TraceCheckUtils]: 355: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 356: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 357: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 358: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 359: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 360: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 361: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,605 INFO L290 TraceCheckUtils]: 362: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 363: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 364: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 365: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 366: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 367: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 368: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:31,606 INFO L290 TraceCheckUtils]: 369: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:31,607 INFO L290 TraceCheckUtils]: 370: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:31,607 INFO L290 TraceCheckUtils]: 371: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:31,607 INFO L290 TraceCheckUtils]: 372: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:31,607 INFO L290 TraceCheckUtils]: 373: Hoare triple {30466#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {30466#false} is VALID [2022-02-20 23:50:31,608 INFO L134 CoverageAnalysis]: Checked inductivity of 10152 backedges. 5981 proven. 542 refuted. 0 times theorem prover too weak. 3629 trivial. 0 not checked. [2022-02-20 23:50:31,609 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:31,609 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1172197] [2022-02-20 23:50:31,609 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1172197] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:31,609 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [228685511] [2022-02-20 23:50:31,609 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:50:31,609 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:31,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:31,611 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:31,612 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-02-20 23:50:31,925 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:50:31,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:31,929 INFO L263 TraceCheckSpWp]: Trace formula consists of 1206 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:50:32,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:32,003 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:33,257 INFO L290 TraceCheckUtils]: 0: Hoare triple {30465#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {30465#true} is VALID [2022-02-20 23:50:33,258 INFO L290 TraceCheckUtils]: 1: Hoare triple {30465#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,258 INFO L290 TraceCheckUtils]: 2: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,258 INFO L290 TraceCheckUtils]: 3: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,259 INFO L290 TraceCheckUtils]: 4: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,259 INFO L290 TraceCheckUtils]: 6: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,260 INFO L290 TraceCheckUtils]: 10: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,260 INFO L290 TraceCheckUtils]: 11: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,260 INFO L290 TraceCheckUtils]: 12: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,261 INFO L290 TraceCheckUtils]: 13: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,261 INFO L290 TraceCheckUtils]: 14: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,261 INFO L290 TraceCheckUtils]: 15: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,261 INFO L290 TraceCheckUtils]: 16: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,262 INFO L290 TraceCheckUtils]: 17: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,262 INFO L290 TraceCheckUtils]: 18: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,263 INFO L290 TraceCheckUtils]: 24: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,264 INFO L290 TraceCheckUtils]: 27: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,264 INFO L290 TraceCheckUtils]: 28: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,264 INFO L290 TraceCheckUtils]: 29: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,265 INFO L290 TraceCheckUtils]: 30: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,265 INFO L290 TraceCheckUtils]: 31: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,265 INFO L290 TraceCheckUtils]: 32: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,265 INFO L290 TraceCheckUtils]: 33: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,266 INFO L290 TraceCheckUtils]: 34: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,266 INFO L290 TraceCheckUtils]: 35: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,266 INFO L290 TraceCheckUtils]: 36: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,266 INFO L290 TraceCheckUtils]: 37: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,266 INFO L290 TraceCheckUtils]: 38: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,267 INFO L290 TraceCheckUtils]: 39: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,267 INFO L290 TraceCheckUtils]: 40: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,267 INFO L290 TraceCheckUtils]: 41: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,268 INFO L290 TraceCheckUtils]: 42: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,268 INFO L290 TraceCheckUtils]: 43: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,268 INFO L290 TraceCheckUtils]: 44: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,268 INFO L290 TraceCheckUtils]: 45: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,268 INFO L290 TraceCheckUtils]: 46: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,269 INFO L290 TraceCheckUtils]: 47: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,269 INFO L290 TraceCheckUtils]: 48: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,269 INFO L290 TraceCheckUtils]: 49: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,269 INFO L290 TraceCheckUtils]: 50: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,270 INFO L290 TraceCheckUtils]: 51: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,270 INFO L290 TraceCheckUtils]: 52: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,270 INFO L290 TraceCheckUtils]: 53: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,270 INFO L290 TraceCheckUtils]: 54: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,270 INFO L290 TraceCheckUtils]: 55: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,271 INFO L290 TraceCheckUtils]: 56: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,271 INFO L290 TraceCheckUtils]: 57: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,271 INFO L290 TraceCheckUtils]: 58: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,271 INFO L290 TraceCheckUtils]: 59: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,272 INFO L290 TraceCheckUtils]: 60: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,272 INFO L290 TraceCheckUtils]: 61: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,272 INFO L290 TraceCheckUtils]: 62: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,272 INFO L290 TraceCheckUtils]: 63: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,272 INFO L290 TraceCheckUtils]: 64: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,273 INFO L290 TraceCheckUtils]: 65: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,273 INFO L290 TraceCheckUtils]: 66: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,273 INFO L290 TraceCheckUtils]: 67: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,273 INFO L290 TraceCheckUtils]: 68: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,274 INFO L290 TraceCheckUtils]: 69: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,274 INFO L290 TraceCheckUtils]: 70: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,274 INFO L290 TraceCheckUtils]: 71: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,274 INFO L290 TraceCheckUtils]: 72: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,275 INFO L290 TraceCheckUtils]: 73: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,275 INFO L290 TraceCheckUtils]: 74: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,275 INFO L290 TraceCheckUtils]: 75: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,275 INFO L290 TraceCheckUtils]: 76: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,276 INFO L290 TraceCheckUtils]: 77: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,276 INFO L290 TraceCheckUtils]: 78: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,276 INFO L290 TraceCheckUtils]: 79: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,276 INFO L290 TraceCheckUtils]: 80: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,276 INFO L290 TraceCheckUtils]: 81: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,277 INFO L290 TraceCheckUtils]: 82: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,277 INFO L290 TraceCheckUtils]: 83: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,277 INFO L290 TraceCheckUtils]: 84: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,277 INFO L290 TraceCheckUtils]: 85: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,278 INFO L290 TraceCheckUtils]: 86: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,278 INFO L290 TraceCheckUtils]: 87: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,278 INFO L290 TraceCheckUtils]: 88: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,278 INFO L290 TraceCheckUtils]: 89: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,278 INFO L290 TraceCheckUtils]: 90: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,279 INFO L290 TraceCheckUtils]: 91: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,279 INFO L290 TraceCheckUtils]: 92: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,279 INFO L290 TraceCheckUtils]: 93: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,279 INFO L290 TraceCheckUtils]: 94: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,280 INFO L290 TraceCheckUtils]: 95: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,280 INFO L290 TraceCheckUtils]: 96: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,280 INFO L290 TraceCheckUtils]: 97: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,280 INFO L290 TraceCheckUtils]: 98: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,281 INFO L290 TraceCheckUtils]: 99: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,281 INFO L290 TraceCheckUtils]: 100: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,281 INFO L290 TraceCheckUtils]: 101: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,281 INFO L290 TraceCheckUtils]: 102: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,282 INFO L290 TraceCheckUtils]: 103: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,282 INFO L290 TraceCheckUtils]: 104: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,282 INFO L290 TraceCheckUtils]: 105: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,282 INFO L290 TraceCheckUtils]: 106: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,282 INFO L290 TraceCheckUtils]: 107: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,283 INFO L290 TraceCheckUtils]: 108: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,283 INFO L290 TraceCheckUtils]: 109: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,283 INFO L290 TraceCheckUtils]: 110: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,283 INFO L290 TraceCheckUtils]: 111: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,284 INFO L290 TraceCheckUtils]: 112: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,284 INFO L290 TraceCheckUtils]: 113: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,284 INFO L290 TraceCheckUtils]: 114: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,284 INFO L290 TraceCheckUtils]: 115: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,285 INFO L290 TraceCheckUtils]: 116: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,285 INFO L290 TraceCheckUtils]: 117: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,285 INFO L290 TraceCheckUtils]: 118: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,285 INFO L290 TraceCheckUtils]: 119: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,285 INFO L290 TraceCheckUtils]: 120: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,286 INFO L290 TraceCheckUtils]: 121: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,286 INFO L290 TraceCheckUtils]: 122: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,286 INFO L290 TraceCheckUtils]: 123: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,286 INFO L290 TraceCheckUtils]: 124: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,287 INFO L290 TraceCheckUtils]: 125: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,287 INFO L290 TraceCheckUtils]: 126: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,287 INFO L290 TraceCheckUtils]: 127: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,287 INFO L290 TraceCheckUtils]: 128: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,287 INFO L290 TraceCheckUtils]: 129: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,288 INFO L290 TraceCheckUtils]: 130: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,288 INFO L290 TraceCheckUtils]: 131: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,288 INFO L290 TraceCheckUtils]: 132: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,288 INFO L290 TraceCheckUtils]: 133: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,289 INFO L290 TraceCheckUtils]: 134: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,289 INFO L290 TraceCheckUtils]: 135: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,289 INFO L290 TraceCheckUtils]: 136: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,289 INFO L290 TraceCheckUtils]: 137: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,290 INFO L290 TraceCheckUtils]: 138: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,290 INFO L290 TraceCheckUtils]: 139: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,290 INFO L290 TraceCheckUtils]: 140: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,290 INFO L290 TraceCheckUtils]: 141: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,290 INFO L290 TraceCheckUtils]: 142: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,291 INFO L290 TraceCheckUtils]: 143: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,291 INFO L290 TraceCheckUtils]: 144: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,291 INFO L290 TraceCheckUtils]: 145: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,291 INFO L290 TraceCheckUtils]: 146: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,292 INFO L290 TraceCheckUtils]: 147: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,292 INFO L290 TraceCheckUtils]: 148: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,292 INFO L290 TraceCheckUtils]: 149: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,292 INFO L290 TraceCheckUtils]: 150: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,292 INFO L290 TraceCheckUtils]: 151: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,293 INFO L290 TraceCheckUtils]: 152: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,293 INFO L290 TraceCheckUtils]: 153: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,293 INFO L290 TraceCheckUtils]: 154: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,293 INFO L290 TraceCheckUtils]: 155: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,294 INFO L290 TraceCheckUtils]: 156: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,294 INFO L290 TraceCheckUtils]: 157: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,294 INFO L290 TraceCheckUtils]: 158: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,294 INFO L290 TraceCheckUtils]: 159: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,294 INFO L290 TraceCheckUtils]: 160: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,295 INFO L290 TraceCheckUtils]: 161: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,295 INFO L290 TraceCheckUtils]: 162: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,295 INFO L290 TraceCheckUtils]: 163: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,295 INFO L290 TraceCheckUtils]: 164: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,296 INFO L290 TraceCheckUtils]: 165: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,296 INFO L290 TraceCheckUtils]: 166: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,296 INFO L290 TraceCheckUtils]: 167: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,296 INFO L290 TraceCheckUtils]: 168: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,297 INFO L290 TraceCheckUtils]: 169: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,297 INFO L290 TraceCheckUtils]: 170: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,297 INFO L290 TraceCheckUtils]: 171: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,297 INFO L290 TraceCheckUtils]: 172: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,297 INFO L290 TraceCheckUtils]: 173: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,298 INFO L290 TraceCheckUtils]: 174: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,298 INFO L290 TraceCheckUtils]: 175: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,298 INFO L290 TraceCheckUtils]: 176: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,298 INFO L290 TraceCheckUtils]: 177: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,299 INFO L290 TraceCheckUtils]: 178: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,299 INFO L290 TraceCheckUtils]: 179: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,299 INFO L290 TraceCheckUtils]: 180: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,299 INFO L290 TraceCheckUtils]: 181: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,300 INFO L290 TraceCheckUtils]: 182: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,300 INFO L290 TraceCheckUtils]: 183: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,300 INFO L290 TraceCheckUtils]: 184: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,300 INFO L290 TraceCheckUtils]: 185: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,300 INFO L290 TraceCheckUtils]: 186: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,301 INFO L290 TraceCheckUtils]: 187: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,301 INFO L290 TraceCheckUtils]: 188: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,301 INFO L290 TraceCheckUtils]: 189: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,301 INFO L290 TraceCheckUtils]: 190: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,302 INFO L290 TraceCheckUtils]: 191: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,302 INFO L290 TraceCheckUtils]: 192: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,302 INFO L290 TraceCheckUtils]: 193: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,302 INFO L290 TraceCheckUtils]: 194: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,302 INFO L290 TraceCheckUtils]: 195: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,303 INFO L290 TraceCheckUtils]: 196: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,303 INFO L290 TraceCheckUtils]: 197: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,303 INFO L290 TraceCheckUtils]: 198: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,303 INFO L290 TraceCheckUtils]: 199: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,304 INFO L290 TraceCheckUtils]: 200: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,304 INFO L290 TraceCheckUtils]: 201: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,304 INFO L290 TraceCheckUtils]: 202: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,304 INFO L290 TraceCheckUtils]: 203: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,305 INFO L290 TraceCheckUtils]: 204: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,305 INFO L290 TraceCheckUtils]: 205: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,305 INFO L290 TraceCheckUtils]: 206: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,305 INFO L290 TraceCheckUtils]: 207: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,305 INFO L290 TraceCheckUtils]: 208: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,306 INFO L290 TraceCheckUtils]: 209: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,306 INFO L290 TraceCheckUtils]: 210: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,306 INFO L290 TraceCheckUtils]: 211: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,306 INFO L290 TraceCheckUtils]: 212: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,307 INFO L290 TraceCheckUtils]: 213: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,307 INFO L290 TraceCheckUtils]: 214: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,307 INFO L290 TraceCheckUtils]: 215: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,307 INFO L290 TraceCheckUtils]: 216: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,308 INFO L290 TraceCheckUtils]: 217: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,308 INFO L290 TraceCheckUtils]: 218: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,308 INFO L290 TraceCheckUtils]: 219: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,308 INFO L290 TraceCheckUtils]: 220: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,308 INFO L290 TraceCheckUtils]: 221: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,309 INFO L290 TraceCheckUtils]: 222: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,309 INFO L290 TraceCheckUtils]: 223: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,309 INFO L290 TraceCheckUtils]: 224: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,309 INFO L290 TraceCheckUtils]: 225: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:33,310 INFO L290 TraceCheckUtils]: 226: Hoare triple {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:33,310 INFO L290 TraceCheckUtils]: 227: Hoare triple {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:33,310 INFO L290 TraceCheckUtils]: 228: Hoare triple {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:33,311 INFO L290 TraceCheckUtils]: 229: Hoare triple {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:33,311 INFO L290 TraceCheckUtils]: 230: Hoare triple {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:33,311 INFO L290 TraceCheckUtils]: 231: Hoare triple {31174#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:33,312 INFO L290 TraceCheckUtils]: 232: Hoare triple {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:33,312 INFO L290 TraceCheckUtils]: 233: Hoare triple {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:33,312 INFO L290 TraceCheckUtils]: 234: Hoare triple {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:33,313 INFO L290 TraceCheckUtils]: 235: Hoare triple {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} is VALID [2022-02-20 23:50:33,313 INFO L290 TraceCheckUtils]: 236: Hoare triple {31190#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 1))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:33,313 INFO L290 TraceCheckUtils]: 237: Hoare triple {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:33,314 INFO L290 TraceCheckUtils]: 238: Hoare triple {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:33,314 INFO L290 TraceCheckUtils]: 239: Hoare triple {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:33,314 INFO L290 TraceCheckUtils]: 240: Hoare triple {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} is VALID [2022-02-20 23:50:33,315 INFO L290 TraceCheckUtils]: 241: Hoare triple {31206#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 2))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:33,315 INFO L290 TraceCheckUtils]: 242: Hoare triple {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:33,315 INFO L290 TraceCheckUtils]: 243: Hoare triple {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:33,316 INFO L290 TraceCheckUtils]: 244: Hoare triple {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:33,316 INFO L290 TraceCheckUtils]: 245: Hoare triple {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} is VALID [2022-02-20 23:50:33,316 INFO L290 TraceCheckUtils]: 246: Hoare triple {31222#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 3))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:33,316 INFO L290 TraceCheckUtils]: 247: Hoare triple {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:33,317 INFO L290 TraceCheckUtils]: 248: Hoare triple {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:33,317 INFO L290 TraceCheckUtils]: 249: Hoare triple {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:33,317 INFO L290 TraceCheckUtils]: 250: Hoare triple {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} is VALID [2022-02-20 23:50:33,318 INFO L290 TraceCheckUtils]: 251: Hoare triple {31238#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 4))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:33,318 INFO L290 TraceCheckUtils]: 252: Hoare triple {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:33,318 INFO L290 TraceCheckUtils]: 253: Hoare triple {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:33,319 INFO L290 TraceCheckUtils]: 254: Hoare triple {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:33,319 INFO L290 TraceCheckUtils]: 255: Hoare triple {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} is VALID [2022-02-20 23:50:33,319 INFO L290 TraceCheckUtils]: 256: Hoare triple {31254#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 5))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:33,320 INFO L290 TraceCheckUtils]: 257: Hoare triple {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:33,320 INFO L290 TraceCheckUtils]: 258: Hoare triple {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:33,320 INFO L290 TraceCheckUtils]: 259: Hoare triple {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:33,320 INFO L290 TraceCheckUtils]: 260: Hoare triple {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} is VALID [2022-02-20 23:50:33,321 INFO L290 TraceCheckUtils]: 261: Hoare triple {31270#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 6))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:33,321 INFO L290 TraceCheckUtils]: 262: Hoare triple {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:33,321 INFO L290 TraceCheckUtils]: 263: Hoare triple {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:33,322 INFO L290 TraceCheckUtils]: 264: Hoare triple {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:33,322 INFO L290 TraceCheckUtils]: 265: Hoare triple {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} is VALID [2022-02-20 23:50:33,322 INFO L290 TraceCheckUtils]: 266: Hoare triple {31286#(and (<= |ULTIMATE.start_foo_~i~0#1| 7) (<= 7 |ULTIMATE.start_foo_~size#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31302#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 8))} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 267: Hoare triple {31302#(and (<= 7 |ULTIMATE.start_foo_~size#1|) (<= |ULTIMATE.start_foo_~i~0#1| 8))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 268: Hoare triple {30466#false} foo_#res#1 := foo_~i~0#1; {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 269: Hoare triple {30466#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 270: Hoare triple {30466#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 271: Hoare triple {30466#false} havoc main_#t~ret3#1; {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 272: Hoare triple {30466#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 273: Hoare triple {30466#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30466#false} is VALID [2022-02-20 23:50:33,323 INFO L290 TraceCheckUtils]: 274: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 275: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 276: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 277: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 278: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 279: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 280: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 281: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 282: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,324 INFO L290 TraceCheckUtils]: 283: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 284: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 285: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 286: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 287: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 288: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 289: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 290: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 291: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,325 INFO L290 TraceCheckUtils]: 292: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 293: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 294: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 295: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 296: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 297: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 298: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 299: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 300: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,326 INFO L290 TraceCheckUtils]: 301: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 302: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 303: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 304: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 305: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 306: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 307: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 308: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 309: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,327 INFO L290 TraceCheckUtils]: 310: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 311: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 312: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 313: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 314: Hoare triple {30466#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 315: Hoare triple {30466#false} foo_#res#1 := foo_~i~0#1; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 316: Hoare triple {30466#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 317: Hoare triple {30466#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 318: Hoare triple {30466#false} havoc main_#t~ret3#1; {30466#false} is VALID [2022-02-20 23:50:33,328 INFO L290 TraceCheckUtils]: 319: Hoare triple {30466#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 320: Hoare triple {30466#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 321: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 322: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 323: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 324: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 325: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 326: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,329 INFO L290 TraceCheckUtils]: 327: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 328: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 329: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 330: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 331: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 332: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 333: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 334: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 335: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,330 INFO L290 TraceCheckUtils]: 336: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 337: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 338: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 339: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 340: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 341: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 342: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 343: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 344: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,331 INFO L290 TraceCheckUtils]: 345: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 346: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 347: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 348: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 349: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 350: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 351: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 352: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 353: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,332 INFO L290 TraceCheckUtils]: 354: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 355: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 356: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 357: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 358: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 359: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 360: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 361: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 362: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,333 INFO L290 TraceCheckUtils]: 363: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 364: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 365: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 366: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 367: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 368: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 369: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 370: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 371: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:33,334 INFO L290 TraceCheckUtils]: 372: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:33,335 INFO L290 TraceCheckUtils]: 373: Hoare triple {30466#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {30466#false} is VALID [2022-02-20 23:50:33,336 INFO L134 CoverageAnalysis]: Checked inductivity of 10152 backedges. 7207 proven. 1646 refuted. 0 times theorem prover too weak. 1299 trivial. 0 not checked. [2022-02-20 23:50:33,336 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:50:34,598 INFO L290 TraceCheckUtils]: 373: Hoare triple {30466#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {30466#false} is VALID [2022-02-20 23:50:34,598 INFO L290 TraceCheckUtils]: 372: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,598 INFO L290 TraceCheckUtils]: 371: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 370: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 369: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 368: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 367: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 366: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 365: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 364: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 363: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,599 INFO L290 TraceCheckUtils]: 362: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 361: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 360: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 359: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 358: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 357: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 356: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 355: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 354: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,600 INFO L290 TraceCheckUtils]: 353: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 352: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 351: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 350: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 349: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 348: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 347: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 346: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 345: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,601 INFO L290 TraceCheckUtils]: 344: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 343: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 342: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 341: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 340: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 339: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 338: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 337: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 336: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,602 INFO L290 TraceCheckUtils]: 335: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 334: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 333: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 332: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 331: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 330: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 329: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 328: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 327: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,603 INFO L290 TraceCheckUtils]: 326: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 325: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 324: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 323: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 322: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 321: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 320: Hoare triple {30466#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 319: Hoare triple {30466#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30466#false} is VALID [2022-02-20 23:50:34,604 INFO L290 TraceCheckUtils]: 318: Hoare triple {30466#false} havoc main_#t~ret3#1; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 317: Hoare triple {30466#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 316: Hoare triple {30466#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 315: Hoare triple {30466#false} foo_#res#1 := foo_~i~0#1; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 314: Hoare triple {30466#false} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 313: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 312: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 311: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 310: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,605 INFO L290 TraceCheckUtils]: 309: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 308: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 307: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 306: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 305: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 304: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 303: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 302: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 301: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,606 INFO L290 TraceCheckUtils]: 300: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 299: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 298: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 297: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 296: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 295: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 294: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 293: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 292: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,607 INFO L290 TraceCheckUtils]: 291: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 290: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 289: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 288: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 287: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 286: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 285: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 284: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 283: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,608 INFO L290 TraceCheckUtils]: 282: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 281: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 280: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 279: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 278: Hoare triple {30466#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 277: Hoare triple {30466#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 276: Hoare triple {30466#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 275: Hoare triple {30466#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 274: Hoare triple {30466#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,609 INFO L290 TraceCheckUtils]: 273: Hoare triple {30466#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30466#false} is VALID [2022-02-20 23:50:34,610 INFO L290 TraceCheckUtils]: 272: Hoare triple {30466#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30466#false} is VALID [2022-02-20 23:50:34,610 INFO L290 TraceCheckUtils]: 271: Hoare triple {30466#false} havoc main_#t~ret3#1; {30466#false} is VALID [2022-02-20 23:50:34,610 INFO L290 TraceCheckUtils]: 270: Hoare triple {30466#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30466#false} is VALID [2022-02-20 23:50:34,610 INFO L290 TraceCheckUtils]: 269: Hoare triple {30466#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30466#false} is VALID [2022-02-20 23:50:34,610 INFO L290 TraceCheckUtils]: 268: Hoare triple {30466#false} foo_#res#1 := foo_~i~0#1; {30466#false} is VALID [2022-02-20 23:50:34,637 INFO L290 TraceCheckUtils]: 267: Hoare triple {31942#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30466#false} is VALID [2022-02-20 23:50:34,638 INFO L290 TraceCheckUtils]: 266: Hoare triple {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31942#(<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_foo_~size#1| 1))} is VALID [2022-02-20 23:50:34,638 INFO L290 TraceCheckUtils]: 265: Hoare triple {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,639 INFO L290 TraceCheckUtils]: 264: Hoare triple {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,639 INFO L290 TraceCheckUtils]: 263: Hoare triple {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,639 INFO L290 TraceCheckUtils]: 262: Hoare triple {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,640 INFO L290 TraceCheckUtils]: 261: Hoare triple {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31946#(<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,640 INFO L290 TraceCheckUtils]: 260: Hoare triple {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,641 INFO L290 TraceCheckUtils]: 259: Hoare triple {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,641 INFO L290 TraceCheckUtils]: 258: Hoare triple {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,641 INFO L290 TraceCheckUtils]: 257: Hoare triple {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,642 INFO L290 TraceCheckUtils]: 256: Hoare triple {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31962#(<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,642 INFO L290 TraceCheckUtils]: 255: Hoare triple {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,643 INFO L290 TraceCheckUtils]: 254: Hoare triple {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,643 INFO L290 TraceCheckUtils]: 253: Hoare triple {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,643 INFO L290 TraceCheckUtils]: 252: Hoare triple {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,644 INFO L290 TraceCheckUtils]: 251: Hoare triple {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31978#(<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,644 INFO L290 TraceCheckUtils]: 250: Hoare triple {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,645 INFO L290 TraceCheckUtils]: 249: Hoare triple {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,645 INFO L290 TraceCheckUtils]: 248: Hoare triple {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,645 INFO L290 TraceCheckUtils]: 247: Hoare triple {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,646 INFO L290 TraceCheckUtils]: 246: Hoare triple {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {31994#(<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,646 INFO L290 TraceCheckUtils]: 245: Hoare triple {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,647 INFO L290 TraceCheckUtils]: 244: Hoare triple {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,647 INFO L290 TraceCheckUtils]: 243: Hoare triple {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,647 INFO L290 TraceCheckUtils]: 242: Hoare triple {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,648 INFO L290 TraceCheckUtils]: 241: Hoare triple {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {32010#(<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,648 INFO L290 TraceCheckUtils]: 240: Hoare triple {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,649 INFO L290 TraceCheckUtils]: 239: Hoare triple {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,649 INFO L290 TraceCheckUtils]: 238: Hoare triple {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,649 INFO L290 TraceCheckUtils]: 237: Hoare triple {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,650 INFO L290 TraceCheckUtils]: 236: Hoare triple {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {32026#(<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,650 INFO L290 TraceCheckUtils]: 235: Hoare triple {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,651 INFO L290 TraceCheckUtils]: 234: Hoare triple {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,651 INFO L290 TraceCheckUtils]: 233: Hoare triple {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,651 INFO L290 TraceCheckUtils]: 232: Hoare triple {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,652 INFO L290 TraceCheckUtils]: 231: Hoare triple {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {32042#(<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,652 INFO L290 TraceCheckUtils]: 230: Hoare triple {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,653 INFO L290 TraceCheckUtils]: 229: Hoare triple {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,653 INFO L290 TraceCheckUtils]: 228: Hoare triple {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,653 INFO L290 TraceCheckUtils]: 227: Hoare triple {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,654 INFO L290 TraceCheckUtils]: 226: Hoare triple {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {32058#(<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_foo_~size#1|)} is VALID [2022-02-20 23:50:34,654 INFO L290 TraceCheckUtils]: 225: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30477#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,654 INFO L290 TraceCheckUtils]: 224: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,655 INFO L290 TraceCheckUtils]: 223: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,655 INFO L290 TraceCheckUtils]: 222: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,655 INFO L290 TraceCheckUtils]: 221: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,656 INFO L290 TraceCheckUtils]: 220: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,656 INFO L290 TraceCheckUtils]: 219: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,656 INFO L290 TraceCheckUtils]: 218: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,657 INFO L290 TraceCheckUtils]: 217: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,657 INFO L290 TraceCheckUtils]: 216: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,657 INFO L290 TraceCheckUtils]: 215: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,658 INFO L290 TraceCheckUtils]: 214: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,658 INFO L290 TraceCheckUtils]: 213: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,658 INFO L290 TraceCheckUtils]: 212: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,659 INFO L290 TraceCheckUtils]: 211: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,659 INFO L290 TraceCheckUtils]: 210: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,659 INFO L290 TraceCheckUtils]: 209: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,660 INFO L290 TraceCheckUtils]: 208: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,660 INFO L290 TraceCheckUtils]: 207: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,660 INFO L290 TraceCheckUtils]: 206: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,661 INFO L290 TraceCheckUtils]: 205: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,661 INFO L290 TraceCheckUtils]: 204: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,661 INFO L290 TraceCheckUtils]: 203: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,662 INFO L290 TraceCheckUtils]: 202: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,662 INFO L290 TraceCheckUtils]: 201: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,662 INFO L290 TraceCheckUtils]: 200: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,663 INFO L290 TraceCheckUtils]: 199: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,663 INFO L290 TraceCheckUtils]: 198: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,663 INFO L290 TraceCheckUtils]: 197: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,664 INFO L290 TraceCheckUtils]: 196: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,664 INFO L290 TraceCheckUtils]: 195: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,664 INFO L290 TraceCheckUtils]: 194: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,664 INFO L290 TraceCheckUtils]: 193: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,665 INFO L290 TraceCheckUtils]: 192: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,665 INFO L290 TraceCheckUtils]: 191: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,665 INFO L290 TraceCheckUtils]: 190: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,666 INFO L290 TraceCheckUtils]: 189: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,666 INFO L290 TraceCheckUtils]: 188: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,666 INFO L290 TraceCheckUtils]: 187: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,667 INFO L290 TraceCheckUtils]: 186: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,667 INFO L290 TraceCheckUtils]: 185: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,667 INFO L290 TraceCheckUtils]: 184: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,667 INFO L290 TraceCheckUtils]: 183: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,668 INFO L290 TraceCheckUtils]: 182: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,668 INFO L290 TraceCheckUtils]: 181: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,668 INFO L290 TraceCheckUtils]: 180: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,669 INFO L290 TraceCheckUtils]: 179: Hoare triple {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,669 INFO L290 TraceCheckUtils]: 178: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30476#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,669 INFO L290 TraceCheckUtils]: 177: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,670 INFO L290 TraceCheckUtils]: 176: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,670 INFO L290 TraceCheckUtils]: 175: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,670 INFO L290 TraceCheckUtils]: 174: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,671 INFO L290 TraceCheckUtils]: 173: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,671 INFO L290 TraceCheckUtils]: 172: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,671 INFO L290 TraceCheckUtils]: 171: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,672 INFO L290 TraceCheckUtils]: 170: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,672 INFO L290 TraceCheckUtils]: 169: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,672 INFO L290 TraceCheckUtils]: 168: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,672 INFO L290 TraceCheckUtils]: 167: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,673 INFO L290 TraceCheckUtils]: 166: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,673 INFO L290 TraceCheckUtils]: 165: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,673 INFO L290 TraceCheckUtils]: 164: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,674 INFO L290 TraceCheckUtils]: 163: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,674 INFO L290 TraceCheckUtils]: 162: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,674 INFO L290 TraceCheckUtils]: 161: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,675 INFO L290 TraceCheckUtils]: 160: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,675 INFO L290 TraceCheckUtils]: 159: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,675 INFO L290 TraceCheckUtils]: 158: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,676 INFO L290 TraceCheckUtils]: 157: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,676 INFO L290 TraceCheckUtils]: 156: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,676 INFO L290 TraceCheckUtils]: 155: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,676 INFO L290 TraceCheckUtils]: 154: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,677 INFO L290 TraceCheckUtils]: 153: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,677 INFO L290 TraceCheckUtils]: 152: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,677 INFO L290 TraceCheckUtils]: 151: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,678 INFO L290 TraceCheckUtils]: 150: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,678 INFO L290 TraceCheckUtils]: 149: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,678 INFO L290 TraceCheckUtils]: 148: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,679 INFO L290 TraceCheckUtils]: 147: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,679 INFO L290 TraceCheckUtils]: 146: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,679 INFO L290 TraceCheckUtils]: 145: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,679 INFO L290 TraceCheckUtils]: 144: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,680 INFO L290 TraceCheckUtils]: 143: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,680 INFO L290 TraceCheckUtils]: 142: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,680 INFO L290 TraceCheckUtils]: 141: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,681 INFO L290 TraceCheckUtils]: 140: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,681 INFO L290 TraceCheckUtils]: 139: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,681 INFO L290 TraceCheckUtils]: 138: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,682 INFO L290 TraceCheckUtils]: 137: Hoare triple {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,682 INFO L290 TraceCheckUtils]: 136: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30903#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,682 INFO L290 TraceCheckUtils]: 135: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,683 INFO L290 TraceCheckUtils]: 134: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,683 INFO L290 TraceCheckUtils]: 133: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,683 INFO L290 TraceCheckUtils]: 132: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,684 INFO L290 TraceCheckUtils]: 131: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,684 INFO L290 TraceCheckUtils]: 130: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,684 INFO L290 TraceCheckUtils]: 129: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,684 INFO L290 TraceCheckUtils]: 128: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,685 INFO L290 TraceCheckUtils]: 127: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,685 INFO L290 TraceCheckUtils]: 126: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,685 INFO L290 TraceCheckUtils]: 125: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,686 INFO L290 TraceCheckUtils]: 124: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,686 INFO L290 TraceCheckUtils]: 123: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,686 INFO L290 TraceCheckUtils]: 122: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,687 INFO L290 TraceCheckUtils]: 121: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,687 INFO L290 TraceCheckUtils]: 120: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,687 INFO L290 TraceCheckUtils]: 119: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,687 INFO L290 TraceCheckUtils]: 118: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,688 INFO L290 TraceCheckUtils]: 117: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,688 INFO L290 TraceCheckUtils]: 116: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,688 INFO L290 TraceCheckUtils]: 115: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,689 INFO L290 TraceCheckUtils]: 114: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,689 INFO L290 TraceCheckUtils]: 113: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,689 INFO L290 TraceCheckUtils]: 112: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,690 INFO L290 TraceCheckUtils]: 111: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,690 INFO L290 TraceCheckUtils]: 110: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,690 INFO L290 TraceCheckUtils]: 109: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,690 INFO L290 TraceCheckUtils]: 108: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,691 INFO L290 TraceCheckUtils]: 107: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,691 INFO L290 TraceCheckUtils]: 106: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,691 INFO L290 TraceCheckUtils]: 105: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,691 INFO L290 TraceCheckUtils]: 104: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,692 INFO L290 TraceCheckUtils]: 103: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,692 INFO L290 TraceCheckUtils]: 102: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,692 INFO L290 TraceCheckUtils]: 101: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,693 INFO L290 TraceCheckUtils]: 100: Hoare triple {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,693 INFO L290 TraceCheckUtils]: 99: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30791#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,693 INFO L290 TraceCheckUtils]: 98: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,694 INFO L290 TraceCheckUtils]: 97: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,694 INFO L290 TraceCheckUtils]: 96: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,694 INFO L290 TraceCheckUtils]: 95: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,694 INFO L290 TraceCheckUtils]: 94: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,695 INFO L290 TraceCheckUtils]: 93: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,695 INFO L290 TraceCheckUtils]: 92: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,695 INFO L290 TraceCheckUtils]: 91: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,695 INFO L290 TraceCheckUtils]: 90: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,696 INFO L290 TraceCheckUtils]: 89: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,696 INFO L290 TraceCheckUtils]: 88: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,696 INFO L290 TraceCheckUtils]: 87: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,696 INFO L290 TraceCheckUtils]: 86: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,697 INFO L290 TraceCheckUtils]: 85: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,697 INFO L290 TraceCheckUtils]: 84: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,697 INFO L290 TraceCheckUtils]: 83: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,698 INFO L290 TraceCheckUtils]: 82: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,698 INFO L290 TraceCheckUtils]: 81: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,698 INFO L290 TraceCheckUtils]: 80: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,698 INFO L290 TraceCheckUtils]: 79: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,699 INFO L290 TraceCheckUtils]: 78: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,699 INFO L290 TraceCheckUtils]: 77: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,699 INFO L290 TraceCheckUtils]: 76: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,699 INFO L290 TraceCheckUtils]: 75: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,700 INFO L290 TraceCheckUtils]: 74: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,700 INFO L290 TraceCheckUtils]: 73: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,700 INFO L290 TraceCheckUtils]: 72: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,700 INFO L290 TraceCheckUtils]: 71: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,701 INFO L290 TraceCheckUtils]: 70: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,701 INFO L290 TraceCheckUtils]: 69: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,701 INFO L290 TraceCheckUtils]: 68: Hoare triple {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,702 INFO L290 TraceCheckUtils]: 67: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30694#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,702 INFO L290 TraceCheckUtils]: 66: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,702 INFO L290 TraceCheckUtils]: 65: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,703 INFO L290 TraceCheckUtils]: 64: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,703 INFO L290 TraceCheckUtils]: 63: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,703 INFO L290 TraceCheckUtils]: 62: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,703 INFO L290 TraceCheckUtils]: 61: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,704 INFO L290 TraceCheckUtils]: 60: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,704 INFO L290 TraceCheckUtils]: 59: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,704 INFO L290 TraceCheckUtils]: 58: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,704 INFO L290 TraceCheckUtils]: 57: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,705 INFO L290 TraceCheckUtils]: 56: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,705 INFO L290 TraceCheckUtils]: 55: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,705 INFO L290 TraceCheckUtils]: 54: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,705 INFO L290 TraceCheckUtils]: 53: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,706 INFO L290 TraceCheckUtils]: 52: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,706 INFO L290 TraceCheckUtils]: 51: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,706 INFO L290 TraceCheckUtils]: 50: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,724 INFO L290 TraceCheckUtils]: 49: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,725 INFO L290 TraceCheckUtils]: 48: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,725 INFO L290 TraceCheckUtils]: 47: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,725 INFO L290 TraceCheckUtils]: 46: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,725 INFO L290 TraceCheckUtils]: 45: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,726 INFO L290 TraceCheckUtils]: 44: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,726 INFO L290 TraceCheckUtils]: 43: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,726 INFO L290 TraceCheckUtils]: 42: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,726 INFO L290 TraceCheckUtils]: 41: Hoare triple {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,727 INFO L290 TraceCheckUtils]: 40: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30612#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,727 INFO L290 TraceCheckUtils]: 39: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,727 INFO L290 TraceCheckUtils]: 38: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,728 INFO L290 TraceCheckUtils]: 37: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,728 INFO L290 TraceCheckUtils]: 36: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,728 INFO L290 TraceCheckUtils]: 35: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,728 INFO L290 TraceCheckUtils]: 34: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,729 INFO L290 TraceCheckUtils]: 33: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,729 INFO L290 TraceCheckUtils]: 32: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,729 INFO L290 TraceCheckUtils]: 31: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,730 INFO L290 TraceCheckUtils]: 30: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,730 INFO L290 TraceCheckUtils]: 29: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,730 INFO L290 TraceCheckUtils]: 28: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,730 INFO L290 TraceCheckUtils]: 27: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,731 INFO L290 TraceCheckUtils]: 26: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,731 INFO L290 TraceCheckUtils]: 25: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,731 INFO L290 TraceCheckUtils]: 24: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,731 INFO L290 TraceCheckUtils]: 23: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,732 INFO L290 TraceCheckUtils]: 22: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,732 INFO L290 TraceCheckUtils]: 21: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,732 INFO L290 TraceCheckUtils]: 20: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,732 INFO L290 TraceCheckUtils]: 19: Hoare triple {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,733 INFO L290 TraceCheckUtils]: 18: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {30545#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,733 INFO L290 TraceCheckUtils]: 17: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,733 INFO L290 TraceCheckUtils]: 16: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,734 INFO L290 TraceCheckUtils]: 15: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,734 INFO L290 TraceCheckUtils]: 14: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,734 INFO L290 TraceCheckUtils]: 13: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,734 INFO L290 TraceCheckUtils]: 12: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,735 INFO L290 TraceCheckUtils]: 11: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,735 INFO L290 TraceCheckUtils]: 10: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,736 INFO L290 TraceCheckUtils]: 8: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,736 INFO L290 TraceCheckUtils]: 6: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,736 INFO L290 TraceCheckUtils]: 5: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,737 INFO L290 TraceCheckUtils]: 4: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,737 INFO L290 TraceCheckUtils]: 3: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,738 INFO L290 TraceCheckUtils]: 1: Hoare triple {30465#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {30493#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:34,738 INFO L290 TraceCheckUtils]: 0: Hoare triple {30465#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {30465#true} is VALID [2022-02-20 23:50:34,739 INFO L134 CoverageAnalysis]: Checked inductivity of 10152 backedges. 7207 proven. 1646 refuted. 0 times theorem prover too weak. 1299 trivial. 0 not checked. [2022-02-20 23:50:34,739 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [228685511] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:50:34,739 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:50:34,740 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 19, 19] total 46 [2022-02-20 23:50:34,740 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1347679165] [2022-02-20 23:50:34,740 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:50:34,741 INFO L78 Accepts]: Start accepts. Automaton has has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 374 [2022-02-20 23:50:34,741 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:50:34,741 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 23:50:34,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 280 edges. 280 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:34,923 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 46 states [2022-02-20 23:50:34,923 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:50:34,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 46 interpolants. [2022-02-20 23:50:34,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=362, Invalid=1708, Unknown=0, NotChecked=0, Total=2070 [2022-02-20 23:50:34,924 INFO L87 Difference]: Start difference. First operand 390 states and 396 transitions. Second operand has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 23:50:38,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:38,769 INFO L93 Difference]: Finished difference Result 390 states and 393 transitions. [2022-02-20 23:50:38,769 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 63 states. [2022-02-20 23:50:38,769 INFO L78 Accepts]: Start accepts. Automaton has has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 374 [2022-02-20 23:50:38,770 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:50:38,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 23:50:38,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 285 transitions. [2022-02-20 23:50:38,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 23:50:38,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 285 transitions. [2022-02-20 23:50:38,773 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 63 states and 285 transitions. [2022-02-20 23:50:38,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:50:38,934 INFO L225 Difference]: With dead ends: 390 [2022-02-20 23:50:38,934 INFO L226 Difference]: Without dead ends: 390 [2022-02-20 23:50:38,936 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 821 GetRequests, 725 SyntacticMatches, 0 SemanticMatches, 96 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2139 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=1739, Invalid=7767, Unknown=0, NotChecked=0, Total=9506 [2022-02-20 23:50:38,936 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 150 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 2768 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 150 SdHoareTripleChecker+Valid, 249 SdHoareTripleChecker+Invalid, 2797 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 2768 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:50:38,937 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [150 Valid, 249 Invalid, 2797 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 2768 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-02-20 23:50:38,937 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-02-20 23:50:38,940 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 390. [2022-02-20 23:50:38,940 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:50:38,940 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 23:50:38,940 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 23:50:38,941 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 23:50:38,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:38,946 INFO L93 Difference]: Finished difference Result 390 states and 393 transitions. [2022-02-20 23:50:38,946 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 393 transitions. [2022-02-20 23:50:38,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:38,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:38,947 INFO L74 IsIncluded]: Start isIncluded. First operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 390 states. [2022-02-20 23:50:38,947 INFO L87 Difference]: Start difference. First operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 390 states. [2022-02-20 23:50:38,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:50:38,952 INFO L93 Difference]: Finished difference Result 390 states and 393 transitions. [2022-02-20 23:50:38,952 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 393 transitions. [2022-02-20 23:50:38,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:50:38,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:50:38,953 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:50:38,953 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:50:38,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 390 states, 389 states have (on average 1.0102827763496145) internal successors, (393), 389 states have internal predecessors, (393), 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 23:50:38,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 393 transitions. [2022-02-20 23:50:38,958 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 393 transitions. Word has length 374 [2022-02-20 23:50:38,959 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:50:38,959 INFO L470 AbstractCegarLoop]: Abstraction has 390 states and 393 transitions. [2022-02-20 23:50:38,959 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 46 states, 46 states have (on average 6.086956521739131) internal successors, (280), 46 states have internal predecessors, (280), 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 23:50:38,959 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 393 transitions. [2022-02-20 23:50:38,960 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 385 [2022-02-20 23:50:38,960 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:50:38,960 INFO L514 BasicCegarLoop]: trace histogram [64, 64, 63, 63, 63, 10, 9, 9, 9, 9, 9, 9, 1, 1, 1] [2022-02-20 23:50:38,981 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-02-20 23:50:39,176 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:39,176 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONARRAY_INDEX, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:50:39,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:50:39,177 INFO L85 PathProgramCache]: Analyzing trace with hash -1649762294, now seen corresponding path program 9 times [2022-02-20 23:50:39,177 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:50:39,177 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296547366] [2022-02-20 23:50:39,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:50:39,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:50:39,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:39,604 INFO L290 TraceCheckUtils]: 0: Hoare triple {34416#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {34416#true} is VALID [2022-02-20 23:50:39,604 INFO L290 TraceCheckUtils]: 1: Hoare triple {34416#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret3#1, main_#t~post2#1, main_#t~mem5#1, main_#t~post4#1, main_~i~1#1, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#mask~0#1.base, main_~#mask~0#1.offset;havoc main_~i~1#1;call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(128);call main_~#mask~0#1.base, main_~#mask~0#1.offset := #Ultimate.allocOnStack(32);main_~i~1#1 := 0; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,605 INFO L290 TraceCheckUtils]: 3: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,605 INFO L290 TraceCheckUtils]: 4: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,606 INFO L290 TraceCheckUtils]: 5: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,606 INFO L290 TraceCheckUtils]: 6: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,606 INFO L290 TraceCheckUtils]: 7: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,607 INFO L290 TraceCheckUtils]: 8: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,607 INFO L290 TraceCheckUtils]: 9: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,607 INFO L290 TraceCheckUtils]: 10: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,607 INFO L290 TraceCheckUtils]: 11: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,608 INFO L290 TraceCheckUtils]: 12: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,608 INFO L290 TraceCheckUtils]: 13: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,608 INFO L290 TraceCheckUtils]: 14: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} foo_#res#1 := foo_~i~0#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,609 INFO L290 TraceCheckUtils]: 15: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,609 INFO L290 TraceCheckUtils]: 16: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,609 INFO L290 TraceCheckUtils]: 17: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~ret3#1; {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:50:39,610 INFO L290 TraceCheckUtils]: 18: Hoare triple {34418#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,610 INFO L290 TraceCheckUtils]: 19: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,610 INFO L290 TraceCheckUtils]: 20: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,610 INFO L290 TraceCheckUtils]: 21: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,611 INFO L290 TraceCheckUtils]: 22: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,611 INFO L290 TraceCheckUtils]: 23: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,611 INFO L290 TraceCheckUtils]: 24: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,612 INFO L290 TraceCheckUtils]: 25: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,612 INFO L290 TraceCheckUtils]: 26: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,612 INFO L290 TraceCheckUtils]: 27: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,613 INFO L290 TraceCheckUtils]: 28: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,613 INFO L290 TraceCheckUtils]: 29: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,613 INFO L290 TraceCheckUtils]: 30: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,614 INFO L290 TraceCheckUtils]: 31: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,614 INFO L290 TraceCheckUtils]: 32: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,614 INFO L290 TraceCheckUtils]: 33: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,615 INFO L290 TraceCheckUtils]: 34: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,615 INFO L290 TraceCheckUtils]: 35: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,639 INFO L290 TraceCheckUtils]: 36: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,639 INFO L290 TraceCheckUtils]: 37: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,640 INFO L290 TraceCheckUtils]: 38: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,640 INFO L290 TraceCheckUtils]: 39: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,641 INFO L290 TraceCheckUtils]: 40: Hoare triple {34419#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,641 INFO L290 TraceCheckUtils]: 41: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,641 INFO L290 TraceCheckUtils]: 42: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,641 INFO L290 TraceCheckUtils]: 43: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,642 INFO L290 TraceCheckUtils]: 44: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,642 INFO L290 TraceCheckUtils]: 45: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,642 INFO L290 TraceCheckUtils]: 46: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,643 INFO L290 TraceCheckUtils]: 47: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,643 INFO L290 TraceCheckUtils]: 48: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,643 INFO L290 TraceCheckUtils]: 49: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,643 INFO L290 TraceCheckUtils]: 50: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,644 INFO L290 TraceCheckUtils]: 51: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,644 INFO L290 TraceCheckUtils]: 52: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,644 INFO L290 TraceCheckUtils]: 53: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,645 INFO L290 TraceCheckUtils]: 54: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,645 INFO L290 TraceCheckUtils]: 55: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,645 INFO L290 TraceCheckUtils]: 56: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,646 INFO L290 TraceCheckUtils]: 57: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,646 INFO L290 TraceCheckUtils]: 58: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,646 INFO L290 TraceCheckUtils]: 59: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,646 INFO L290 TraceCheckUtils]: 60: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,647 INFO L290 TraceCheckUtils]: 61: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,647 INFO L290 TraceCheckUtils]: 62: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,647 INFO L290 TraceCheckUtils]: 63: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,648 INFO L290 TraceCheckUtils]: 64: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,648 INFO L290 TraceCheckUtils]: 65: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,648 INFO L290 TraceCheckUtils]: 66: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,649 INFO L290 TraceCheckUtils]: 67: Hoare triple {34420#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,649 INFO L290 TraceCheckUtils]: 68: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,649 INFO L290 TraceCheckUtils]: 69: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,650 INFO L290 TraceCheckUtils]: 70: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,650 INFO L290 TraceCheckUtils]: 71: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,650 INFO L290 TraceCheckUtils]: 72: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,650 INFO L290 TraceCheckUtils]: 73: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,651 INFO L290 TraceCheckUtils]: 74: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,651 INFO L290 TraceCheckUtils]: 75: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,651 INFO L290 TraceCheckUtils]: 76: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,652 INFO L290 TraceCheckUtils]: 77: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,652 INFO L290 TraceCheckUtils]: 78: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,652 INFO L290 TraceCheckUtils]: 79: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,653 INFO L290 TraceCheckUtils]: 80: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,653 INFO L290 TraceCheckUtils]: 81: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,653 INFO L290 TraceCheckUtils]: 82: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,653 INFO L290 TraceCheckUtils]: 83: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,654 INFO L290 TraceCheckUtils]: 84: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,654 INFO L290 TraceCheckUtils]: 85: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,654 INFO L290 TraceCheckUtils]: 86: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,655 INFO L290 TraceCheckUtils]: 87: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,655 INFO L290 TraceCheckUtils]: 88: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,655 INFO L290 TraceCheckUtils]: 89: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,655 INFO L290 TraceCheckUtils]: 90: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,656 INFO L290 TraceCheckUtils]: 91: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,656 INFO L290 TraceCheckUtils]: 92: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,656 INFO L290 TraceCheckUtils]: 93: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,657 INFO L290 TraceCheckUtils]: 94: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,657 INFO L290 TraceCheckUtils]: 95: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,657 INFO L290 TraceCheckUtils]: 96: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,657 INFO L290 TraceCheckUtils]: 97: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,658 INFO L290 TraceCheckUtils]: 98: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,658 INFO L290 TraceCheckUtils]: 99: Hoare triple {34421#(<= 3 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,659 INFO L290 TraceCheckUtils]: 100: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,659 INFO L290 TraceCheckUtils]: 101: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,659 INFO L290 TraceCheckUtils]: 102: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,660 INFO L290 TraceCheckUtils]: 103: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,660 INFO L290 TraceCheckUtils]: 104: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,660 INFO L290 TraceCheckUtils]: 105: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,660 INFO L290 TraceCheckUtils]: 106: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,661 INFO L290 TraceCheckUtils]: 107: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,661 INFO L290 TraceCheckUtils]: 108: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,661 INFO L290 TraceCheckUtils]: 109: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,662 INFO L290 TraceCheckUtils]: 110: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,662 INFO L290 TraceCheckUtils]: 111: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,662 INFO L290 TraceCheckUtils]: 112: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,662 INFO L290 TraceCheckUtils]: 113: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,663 INFO L290 TraceCheckUtils]: 114: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,663 INFO L290 TraceCheckUtils]: 115: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,663 INFO L290 TraceCheckUtils]: 116: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,664 INFO L290 TraceCheckUtils]: 117: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,664 INFO L290 TraceCheckUtils]: 118: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,664 INFO L290 TraceCheckUtils]: 119: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,665 INFO L290 TraceCheckUtils]: 120: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,665 INFO L290 TraceCheckUtils]: 121: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,665 INFO L290 TraceCheckUtils]: 122: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,666 INFO L290 TraceCheckUtils]: 123: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,666 INFO L290 TraceCheckUtils]: 124: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,666 INFO L290 TraceCheckUtils]: 125: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,666 INFO L290 TraceCheckUtils]: 126: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,667 INFO L290 TraceCheckUtils]: 127: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,667 INFO L290 TraceCheckUtils]: 128: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,667 INFO L290 TraceCheckUtils]: 129: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,668 INFO L290 TraceCheckUtils]: 130: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,668 INFO L290 TraceCheckUtils]: 131: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,668 INFO L290 TraceCheckUtils]: 132: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,668 INFO L290 TraceCheckUtils]: 133: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,669 INFO L290 TraceCheckUtils]: 134: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,669 INFO L290 TraceCheckUtils]: 135: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,670 INFO L290 TraceCheckUtils]: 136: Hoare triple {34422#(<= 4 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,670 INFO L290 TraceCheckUtils]: 137: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,671 INFO L290 TraceCheckUtils]: 138: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,671 INFO L290 TraceCheckUtils]: 139: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,671 INFO L290 TraceCheckUtils]: 140: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,672 INFO L290 TraceCheckUtils]: 141: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,672 INFO L290 TraceCheckUtils]: 142: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,672 INFO L290 TraceCheckUtils]: 143: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,672 INFO L290 TraceCheckUtils]: 144: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,673 INFO L290 TraceCheckUtils]: 145: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,673 INFO L290 TraceCheckUtils]: 146: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,673 INFO L290 TraceCheckUtils]: 147: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,674 INFO L290 TraceCheckUtils]: 148: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,674 INFO L290 TraceCheckUtils]: 149: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,674 INFO L290 TraceCheckUtils]: 150: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,675 INFO L290 TraceCheckUtils]: 151: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,675 INFO L290 TraceCheckUtils]: 152: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,675 INFO L290 TraceCheckUtils]: 153: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,675 INFO L290 TraceCheckUtils]: 154: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,676 INFO L290 TraceCheckUtils]: 155: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,676 INFO L290 TraceCheckUtils]: 156: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,676 INFO L290 TraceCheckUtils]: 157: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,677 INFO L290 TraceCheckUtils]: 158: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,677 INFO L290 TraceCheckUtils]: 159: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,677 INFO L290 TraceCheckUtils]: 160: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,677 INFO L290 TraceCheckUtils]: 161: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,678 INFO L290 TraceCheckUtils]: 162: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,678 INFO L290 TraceCheckUtils]: 163: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,678 INFO L290 TraceCheckUtils]: 164: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,679 INFO L290 TraceCheckUtils]: 165: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,679 INFO L290 TraceCheckUtils]: 166: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,679 INFO L290 TraceCheckUtils]: 167: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,680 INFO L290 TraceCheckUtils]: 168: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,680 INFO L290 TraceCheckUtils]: 169: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,680 INFO L290 TraceCheckUtils]: 170: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,680 INFO L290 TraceCheckUtils]: 171: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,681 INFO L290 TraceCheckUtils]: 172: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,681 INFO L290 TraceCheckUtils]: 173: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,681 INFO L290 TraceCheckUtils]: 174: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,682 INFO L290 TraceCheckUtils]: 175: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,682 INFO L290 TraceCheckUtils]: 176: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,682 INFO L290 TraceCheckUtils]: 177: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,683 INFO L290 TraceCheckUtils]: 178: Hoare triple {34423#(<= 5 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,683 INFO L290 TraceCheckUtils]: 179: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,683 INFO L290 TraceCheckUtils]: 180: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,684 INFO L290 TraceCheckUtils]: 181: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,684 INFO L290 TraceCheckUtils]: 182: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,684 INFO L290 TraceCheckUtils]: 183: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,685 INFO L290 TraceCheckUtils]: 184: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,685 INFO L290 TraceCheckUtils]: 185: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,685 INFO L290 TraceCheckUtils]: 186: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,685 INFO L290 TraceCheckUtils]: 187: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,686 INFO L290 TraceCheckUtils]: 188: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,686 INFO L290 TraceCheckUtils]: 189: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,686 INFO L290 TraceCheckUtils]: 190: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,687 INFO L290 TraceCheckUtils]: 191: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,687 INFO L290 TraceCheckUtils]: 192: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,687 INFO L290 TraceCheckUtils]: 193: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,688 INFO L290 TraceCheckUtils]: 194: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,688 INFO L290 TraceCheckUtils]: 195: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,688 INFO L290 TraceCheckUtils]: 196: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,688 INFO L290 TraceCheckUtils]: 197: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,689 INFO L290 TraceCheckUtils]: 198: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,689 INFO L290 TraceCheckUtils]: 199: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,689 INFO L290 TraceCheckUtils]: 200: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,690 INFO L290 TraceCheckUtils]: 201: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,690 INFO L290 TraceCheckUtils]: 202: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,690 INFO L290 TraceCheckUtils]: 203: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,690 INFO L290 TraceCheckUtils]: 204: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,691 INFO L290 TraceCheckUtils]: 205: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,691 INFO L290 TraceCheckUtils]: 206: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,691 INFO L290 TraceCheckUtils]: 207: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,692 INFO L290 TraceCheckUtils]: 208: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,692 INFO L290 TraceCheckUtils]: 209: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,692 INFO L290 TraceCheckUtils]: 210: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,693 INFO L290 TraceCheckUtils]: 211: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,693 INFO L290 TraceCheckUtils]: 212: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,693 INFO L290 TraceCheckUtils]: 213: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,694 INFO L290 TraceCheckUtils]: 214: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,694 INFO L290 TraceCheckUtils]: 215: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,694 INFO L290 TraceCheckUtils]: 216: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,694 INFO L290 TraceCheckUtils]: 217: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,695 INFO L290 TraceCheckUtils]: 218: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,695 INFO L290 TraceCheckUtils]: 219: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,695 INFO L290 TraceCheckUtils]: 220: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,696 INFO L290 TraceCheckUtils]: 221: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,696 INFO L290 TraceCheckUtils]: 222: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,696 INFO L290 TraceCheckUtils]: 223: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,696 INFO L290 TraceCheckUtils]: 224: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,697 INFO L290 TraceCheckUtils]: 225: Hoare triple {34424#(<= 6 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,697 INFO L290 TraceCheckUtils]: 226: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,698 INFO L290 TraceCheckUtils]: 227: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,698 INFO L290 TraceCheckUtils]: 228: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,698 INFO L290 TraceCheckUtils]: 229: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,698 INFO L290 TraceCheckUtils]: 230: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,699 INFO L290 TraceCheckUtils]: 231: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,699 INFO L290 TraceCheckUtils]: 232: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,699 INFO L290 TraceCheckUtils]: 233: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,700 INFO L290 TraceCheckUtils]: 234: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,700 INFO L290 TraceCheckUtils]: 235: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,700 INFO L290 TraceCheckUtils]: 236: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,700 INFO L290 TraceCheckUtils]: 237: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,701 INFO L290 TraceCheckUtils]: 238: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,701 INFO L290 TraceCheckUtils]: 239: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,701 INFO L290 TraceCheckUtils]: 240: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,702 INFO L290 TraceCheckUtils]: 241: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,702 INFO L290 TraceCheckUtils]: 242: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,702 INFO L290 TraceCheckUtils]: 243: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,703 INFO L290 TraceCheckUtils]: 244: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,703 INFO L290 TraceCheckUtils]: 245: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,703 INFO L290 TraceCheckUtils]: 246: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,704 INFO L290 TraceCheckUtils]: 247: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,704 INFO L290 TraceCheckUtils]: 248: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,704 INFO L290 TraceCheckUtils]: 249: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,704 INFO L290 TraceCheckUtils]: 250: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,705 INFO L290 TraceCheckUtils]: 251: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,705 INFO L290 TraceCheckUtils]: 252: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,705 INFO L290 TraceCheckUtils]: 253: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,706 INFO L290 TraceCheckUtils]: 254: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,706 INFO L290 TraceCheckUtils]: 255: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,706 INFO L290 TraceCheckUtils]: 256: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,706 INFO L290 TraceCheckUtils]: 257: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,707 INFO L290 TraceCheckUtils]: 258: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,707 INFO L290 TraceCheckUtils]: 259: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,707 INFO L290 TraceCheckUtils]: 260: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,708 INFO L290 TraceCheckUtils]: 261: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,708 INFO L290 TraceCheckUtils]: 262: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,708 INFO L290 TraceCheckUtils]: 263: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,709 INFO L290 TraceCheckUtils]: 264: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,709 INFO L290 TraceCheckUtils]: 265: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,709 INFO L290 TraceCheckUtils]: 266: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,709 INFO L290 TraceCheckUtils]: 267: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,710 INFO L290 TraceCheckUtils]: 268: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,710 INFO L290 TraceCheckUtils]: 269: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,710 INFO L290 TraceCheckUtils]: 270: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,711 INFO L290 TraceCheckUtils]: 271: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,711 INFO L290 TraceCheckUtils]: 272: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,711 INFO L290 TraceCheckUtils]: 273: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} foo_#res#1 := foo_~i~0#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,712 INFO L290 TraceCheckUtils]: 274: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,712 INFO L290 TraceCheckUtils]: 275: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,712 INFO L290 TraceCheckUtils]: 276: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~ret3#1; {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,713 INFO L290 TraceCheckUtils]: 277: Hoare triple {34425#(<= 7 |ULTIMATE.start_main_~i~1#1|)} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34426#(<= 8 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:50:39,713 INFO L290 TraceCheckUtils]: 278: Hoare triple {34426#(<= 8 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:39,715 INFO L290 TraceCheckUtils]: 279: Hoare triple {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:39,715 INFO L290 TraceCheckUtils]: 280: Hoare triple {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:39,716 INFO L290 TraceCheckUtils]: 281: Hoare triple {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:39,716 INFO L290 TraceCheckUtils]: 282: Hoare triple {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} is VALID [2022-02-20 23:50:39,717 INFO L290 TraceCheckUtils]: 283: Hoare triple {34427#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= 8 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_foo_~i~0#1| 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,717 INFO L290 TraceCheckUtils]: 284: Hoare triple {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,717 INFO L290 TraceCheckUtils]: 285: Hoare triple {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,718 INFO L290 TraceCheckUtils]: 286: Hoare triple {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,718 INFO L290 TraceCheckUtils]: 287: Hoare triple {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,719 INFO L290 TraceCheckUtils]: 288: Hoare triple {34428#(and (<= (+ 7 |ULTIMATE.start_foo_~i~0#1|) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,719 INFO L290 TraceCheckUtils]: 289: Hoare triple {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,719 INFO L290 TraceCheckUtils]: 290: Hoare triple {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,720 INFO L290 TraceCheckUtils]: 291: Hoare triple {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,720 INFO L290 TraceCheckUtils]: 292: Hoare triple {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,721 INFO L290 TraceCheckUtils]: 293: Hoare triple {34429#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 6) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,721 INFO L290 TraceCheckUtils]: 294: Hoare triple {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,721 INFO L290 TraceCheckUtils]: 295: Hoare triple {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,722 INFO L290 TraceCheckUtils]: 296: Hoare triple {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,722 INFO L290 TraceCheckUtils]: 297: Hoare triple {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,723 INFO L290 TraceCheckUtils]: 298: Hoare triple {34430#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 5) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,723 INFO L290 TraceCheckUtils]: 299: Hoare triple {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,723 INFO L290 TraceCheckUtils]: 300: Hoare triple {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,724 INFO L290 TraceCheckUtils]: 301: Hoare triple {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,724 INFO L290 TraceCheckUtils]: 302: Hoare triple {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,725 INFO L290 TraceCheckUtils]: 303: Hoare triple {34431#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 4) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,725 INFO L290 TraceCheckUtils]: 304: Hoare triple {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,725 INFO L290 TraceCheckUtils]: 305: Hoare triple {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,726 INFO L290 TraceCheckUtils]: 306: Hoare triple {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,726 INFO L290 TraceCheckUtils]: 307: Hoare triple {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,727 INFO L290 TraceCheckUtils]: 308: Hoare triple {34432#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 3) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:39,727 INFO L290 TraceCheckUtils]: 309: Hoare triple {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:39,727 INFO L290 TraceCheckUtils]: 310: Hoare triple {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:39,728 INFO L290 TraceCheckUtils]: 311: Hoare triple {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:39,728 INFO L290 TraceCheckUtils]: 312: Hoare triple {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:50:39,728 INFO L290 TraceCheckUtils]: 313: Hoare triple {34433#(and (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0) (<= (+ |ULTIMATE.start_foo_~i~0#1| 2) |ULTIMATE.start_main_~i~1#1|))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,729 INFO L290 TraceCheckUtils]: 314: Hoare triple {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,729 INFO L290 TraceCheckUtils]: 315: Hoare triple {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,730 INFO L290 TraceCheckUtils]: 316: Hoare triple {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,730 INFO L290 TraceCheckUtils]: 317: Hoare triple {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,730 INFO L290 TraceCheckUtils]: 318: Hoare triple {34434#(and (<= (+ |ULTIMATE.start_foo_~i~0#1| 1) |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,731 INFO L290 TraceCheckUtils]: 319: Hoare triple {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,731 INFO L290 TraceCheckUtils]: 320: Hoare triple {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,731 INFO L290 TraceCheckUtils]: 321: Hoare triple {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,732 INFO L290 TraceCheckUtils]: 322: Hoare triple {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,732 INFO L290 TraceCheckUtils]: 323: Hoare triple {34435#(and (<= |ULTIMATE.start_foo_~i~0#1| |ULTIMATE.start_main_~i~1#1|) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34436#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 324: Hoare triple {34436#(and (<= |ULTIMATE.start_foo_~i~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (= (+ (* (- 1) |ULTIMATE.start_foo_~size#1|) |ULTIMATE.start_main_~i~1#1|) 0))} assume !(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 325: Hoare triple {34417#false} foo_#res#1 := foo_~i~0#1; {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 326: Hoare triple {34417#false} main_#t~ret3#1 := foo_#res#1;assume { :end_inline_foo } true;assume -2147483648 <= main_#t~ret3#1 && main_#t~ret3#1 <= 2147483647; {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 327: Hoare triple {34417#false} SUMMARY for call write~int(main_#t~ret3#1, main_~#b~0#1.base, main_~#b~0#1.offset + 4 * main_~i~1#1, 4); srcloc: L27 {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 328: Hoare triple {34417#false} havoc main_#t~ret3#1; {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 329: Hoare triple {34417#false} main_#t~post2#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post2#1;havoc main_#t~post2#1; {34417#false} is VALID [2022-02-20 23:50:39,733 INFO L290 TraceCheckUtils]: 330: Hoare triple {34417#false} assume !!(main_~i~1#1 % 4294967296 < 32);assume { :begin_inline_foo } true;foo_#in~b#1.base, foo_#in~b#1.offset, foo_#in~size#1 := main_~#mask~0#1.base, main_~#mask~0#1.offset, main_~i~1#1;havoc foo_#res#1;havoc foo_#t~mem1#1, foo_#t~post0#1, foo_~b#1.base, foo_~b#1.offset, foo_~size#1, foo_~a~0#1, foo_~i~0#1;foo_~b#1.base, foo_~b#1.offset := foo_#in~b#1.base, foo_#in~b#1.offset;foo_~size#1 := foo_#in~size#1;havoc foo_~a~0#1;havoc foo_~i~0#1;foo_~i~0#1 := 0; {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 331: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 332: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 333: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 334: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 335: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 336: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 337: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,734 INFO L290 TraceCheckUtils]: 338: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 339: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 340: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 341: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 342: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 343: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 344: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 345: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,735 INFO L290 TraceCheckUtils]: 346: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 347: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 348: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 349: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 350: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 351: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 352: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,736 INFO L290 TraceCheckUtils]: 353: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 354: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 355: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 356: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 357: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 358: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 359: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 360: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,737 INFO L290 TraceCheckUtils]: 361: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 362: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 363: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 364: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 365: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 366: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 367: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 368: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,738 INFO L290 TraceCheckUtils]: 369: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 370: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 371: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 372: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 373: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 374: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 375: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,739 INFO L290 TraceCheckUtils]: 376: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 377: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 378: Hoare triple {34417#false} SUMMARY for call foo_#t~mem1#1 := read~int(foo_~b#1.base, foo_~b#1.offset + foo_~i~0#1, 1); srcloc: L18-1 {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 379: Hoare triple {34417#false} foo_~a~0#1 := foo_~a~0#1[foo_~i~0#1 := foo_#t~mem1#1];havoc foo_#t~mem1#1; {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 380: Hoare triple {34417#false} foo_#t~post0#1 := foo_~i~0#1;foo_~i~0#1 := 1 + foo_#t~post0#1;havoc foo_#t~post0#1; {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 381: Hoare triple {34417#false} assume !!(foo_~i~0#1 <= 1 + foo_~size#1); {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 382: Hoare triple {34417#false} assume 0 <= foo_~i~0#1 && foo_~i~0#1 < 33; {34417#false} is VALID [2022-02-20 23:50:39,740 INFO L290 TraceCheckUtils]: 383: Hoare triple {34417#false} assume !(1 + (foo_~b#1.offset + foo_~i~0#1) <= #length[foo_~b#1.base] && 0 <= foo_~b#1.offset + foo_~i~0#1); {34417#false} is VALID [2022-02-20 23:50:39,742 INFO L134 CoverageAnalysis]: Checked inductivity of 10791 backedges. 7290 proven. 2602 refuted. 0 times theorem prover too weak. 899 trivial. 0 not checked. [2022-02-20 23:50:39,742 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:50:39,742 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296547366] [2022-02-20 23:50:39,742 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [296547366] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:50:39,743 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [107584256] [2022-02-20 23:50:39,743 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:50:39,743 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:50:39,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:50:39,768 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:50:39,799 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-02-20 23:50:40,072 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2022-02-20 23:50:40,072 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:50:40,073 INFO L263 TraceCheckSpWp]: Trace formula consists of 354 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:50:40,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:50:40,122 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:50:40,159 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:50:40,159 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15