./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/list-ext-properties/list-ext_flag_1.i --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/list-ext-properties/list-ext_flag_1.i -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 9e6ddc72db9996307e31b37c1f23ddad101cfdc849bb3a24fd3b76db809c7055 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:48:11,212 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:48:11,214 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:48:11,254 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:48:11,255 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:48:11,258 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:48:11,259 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:48:11,262 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:48:11,264 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:48:11,268 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:48:11,269 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:48:11,270 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:48:11,270 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:48:11,273 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:48:11,274 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:48:11,277 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:48:11,278 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:48:11,279 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:48:11,281 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:48:11,286 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:48:11,287 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:48:11,288 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:48:11,289 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:48:11,290 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:48:11,296 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:48:11,297 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:48:11,297 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:48:11,298 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:48:11,299 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:48:11,300 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:48:11,300 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:48:11,301 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:48:11,302 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:48:11,303 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:48:11,304 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:48:11,305 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:48:11,305 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:48:11,306 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:48:11,306 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:48:11,307 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:48:11,308 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:48:11,309 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:48:11,333 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:48:11,333 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:48:11,334 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:48:11,334 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:48:11,335 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:48:11,335 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:48:11,336 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:48:11,336 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:48:11,336 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:48:11,336 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:48:11,337 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:48:11,337 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:48:11,337 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:48:11,338 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:48:11,338 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:48:11,338 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:48:11,338 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:48:11,338 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:48:11,339 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:48:11,339 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:48:11,339 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:48:11,339 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:48:11,339 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:48:11,340 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:48:11,340 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:48:11,340 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:11,340 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:48:11,340 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:48:11,341 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:48:11,341 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:48:11,341 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 -> 9e6ddc72db9996307e31b37c1f23ddad101cfdc849bb3a24fd3b76db809c7055 [2022-02-20 23:48:11,534 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:48:11,554 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:48:11,557 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:48:11,558 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:48:11,559 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:48:11,560 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-ext-properties/list-ext_flag_1.i [2022-02-20 23:48:11,616 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/87eebdbc5/b1549f9782b141ea9082509f636ec782/FLAGe7368aef1 [2022-02-20 23:48:12,018 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:48:12,018 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/list-ext_flag_1.i [2022-02-20 23:48:12,039 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/87eebdbc5/b1549f9782b141ea9082509f636ec782/FLAGe7368aef1 [2022-02-20 23:48:12,414 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/87eebdbc5/b1549f9782b141ea9082509f636ec782 [2022-02-20 23:48:12,416 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:48:12,418 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:48:12,423 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:12,423 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:48:12,426 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:48:12,427 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:12,428 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4c1e09be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12, skipping insertion in model container [2022-02-20 23:48:12,428 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:12,434 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:48:12,474 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:48:12,791 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/list-ext_flag_1.i[23654,23667] [2022-02-20 23:48:12,798 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:12,812 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:48:12,873 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/list-ext_flag_1.i[23654,23667] [2022-02-20 23:48:12,876 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:12,898 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:48:12,899 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12 WrapperNode [2022-02-20 23:48:12,899 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:12,900 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:12,900 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:48:12,900 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:48:12,908 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:48:12" (1/1) ... [2022-02-20 23:48:12,926 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:48:12" (1/1) ... [2022-02-20 23:48:12,970 INFO L137 Inliner]: procedures = 124, calls = 28, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 113 [2022-02-20 23:48:12,972 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:12,973 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:48:12,973 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:48:12,973 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:48:12,981 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:12,981 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:12,993 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:12,995 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:13,010 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:13,025 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:13,027 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:13,036 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:48:13,043 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:48:13,047 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:48:13,047 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:48:13,049 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (1/1) ... [2022-02-20 23:48:13,055 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:13,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:13,085 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:48:13,115 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:48:13,130 INFO L130 BoogieDeclarations]: Found specification of procedure myexit [2022-02-20 23:48:13,131 INFO L138 BoogieDeclarations]: Found implementation of procedure myexit [2022-02-20 23:48:13,131 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:48:13,131 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:48:13,132 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:48:13,133 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:48:13,246 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:48:13,250 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:48:13,291 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint myexitFINAL: assume true; [2022-02-20 23:48:13,601 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:48:13,608 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:48:13,608 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 23:48:13,609 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:13 BoogieIcfgContainer [2022-02-20 23:48:13,610 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:48:13,611 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:48:13,611 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:48:13,614 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:48:13,614 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:48:12" (1/3) ... [2022-02-20 23:48:13,615 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e23764f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:13, skipping insertion in model container [2022-02-20 23:48:13,615 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:12" (2/3) ... [2022-02-20 23:48:13,615 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e23764f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:13, skipping insertion in model container [2022-02-20 23:48:13,615 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:13" (3/3) ... [2022-02-20 23:48:13,616 INFO L111 eAbstractionObserver]: Analyzing ICFG list-ext_flag_1.i [2022-02-20 23:48:13,621 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:48:13,621 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 40 error locations. [2022-02-20 23:48:13,656 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:48:13,663 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:48:13,663 INFO L340 AbstractCegarLoop]: Starting to check reachability of 40 error locations. [2022-02-20 23:48:13,678 INFO L276 IsEmpty]: Start isEmpty. Operand has 91 states, 48 states have (on average 2.125) internal successors, (102), 89 states have internal predecessors, (102), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:13,683 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:48:13,684 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:13,684 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:48:13,684 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:13,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:13,689 INFO L85 PathProgramCache]: Analyzing trace with hash 1037517928, now seen corresponding path program 1 times [2022-02-20 23:48:13,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:13,697 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1878645830] [2022-02-20 23:48:13,697 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:13,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:13,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:13,830 INFO L290 TraceCheckUtils]: 0: Hoare triple {94#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {94#true} is VALID [2022-02-20 23:48:13,831 INFO L290 TraceCheckUtils]: 1: Hoare triple {94#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {94#true} is VALID [2022-02-20 23:48:13,831 INFO L290 TraceCheckUtils]: 2: Hoare triple {94#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {94#true} is VALID [2022-02-20 23:48:13,831 INFO L290 TraceCheckUtils]: 3: Hoare triple {94#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {94#true} is VALID [2022-02-20 23:48:13,832 INFO L290 TraceCheckUtils]: 4: Hoare triple {94#true} assume !true; {95#false} is VALID [2022-02-20 23:48:13,833 INFO L290 TraceCheckUtils]: 5: Hoare triple {95#false} assume !(1 == #valid[main_~p~0#1.base]); {95#false} is VALID [2022-02-20 23:48:13,834 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:48:13,834 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:13,835 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1878645830] [2022-02-20 23:48:13,835 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1878645830] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:13,836 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:13,836 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:13,839 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1807635163] [2022-02-20 23:48:13,840 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:13,844 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,845 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:13,847 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,864 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:48:13,864 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:48:13,865 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:13,891 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:48:13,892 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:48:13,896 INFO L87 Difference]: Start difference. First operand has 91 states, 48 states have (on average 2.125) internal successors, (102), 89 states have internal predecessors, (102), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:13,980 INFO L93 Difference]: Finished difference Result 91 states and 100 transitions. [2022-02-20 23:48:13,980 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:48:13,981 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,981 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:13,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 23:48:13,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:13,995 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 104 transitions. [2022-02-20 23:48:13,995 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 104 transitions. [2022-02-20 23:48:14,085 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:48:14,096 INFO L225 Difference]: With dead ends: 91 [2022-02-20 23:48:14,096 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 23:48:14,098 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:48:14,100 INFO L933 BasicCegarLoop]: 100 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:14,101 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:14,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 23:48:14,125 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2022-02-20 23:48:14,126 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:14,127 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,128 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,128 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:14,133 INFO L93 Difference]: Finished difference Result 85 states and 92 transitions. [2022-02-20 23:48:14,133 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-02-20 23:48:14,134 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:14,134 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:14,135 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 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 85 states. [2022-02-20 23:48:14,136 INFO L87 Difference]: Start difference. First operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 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 85 states. [2022-02-20 23:48:14,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:14,144 INFO L93 Difference]: Finished difference Result 85 states and 92 transitions. [2022-02-20 23:48:14,144 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-02-20 23:48:14,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:14,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:14,146 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:14,146 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:14,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 45 states have (on average 2.0444444444444443) internal successors, (92), 84 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 92 transitions. [2022-02-20 23:48:14,157 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 92 transitions. Word has length 6 [2022-02-20 23:48:14,158 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:14,159 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 92 transitions. [2022-02-20 23:48:14,159 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 3.0) internal successors, (6), 2 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:48:14,160 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 92 transitions. [2022-02-20 23:48:14,160 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:48:14,161 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:14,161 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:14,161 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:48:14,162 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:14,163 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:14,165 INFO L85 PathProgramCache]: Analyzing trace with hash 620871761, now seen corresponding path program 1 times [2022-02-20 23:48:14,166 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:14,167 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1964036727] [2022-02-20 23:48:14,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:14,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:14,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:14,229 INFO L290 TraceCheckUtils]: 0: Hoare triple {444#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {444#true} is VALID [2022-02-20 23:48:14,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {444#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {446#(= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {446#(= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {446#(= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,232 INFO L290 TraceCheckUtils]: 3: Hoare triple {446#(= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,232 INFO L290 TraceCheckUtils]: 4: Hoare triple {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} main_#t~short5#1 := main_~i~0#1 < 20; {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,236 INFO L290 TraceCheckUtils]: 5: Hoare triple {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,237 INFO L290 TraceCheckUtils]: 6: Hoare triple {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:14,238 INFO L290 TraceCheckUtils]: 7: Hoare triple {447#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !(1 == #valid[main_~p~0#1.base]); {445#false} is VALID [2022-02-20 23:48:14,238 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:48:14,238 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:14,238 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1964036727] [2022-02-20 23:48:14,239 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1964036727] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:14,239 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:14,239 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:14,240 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2106128025] [2022-02-20 23:48:14,240 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:14,241 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:48:14,242 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:14,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:14,252 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:14,253 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:14,253 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:14,253 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:14,254 INFO L87 Difference]: Start difference. First operand 85 states and 92 transitions. Second operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:14,541 INFO L93 Difference]: Finished difference Result 96 states and 106 transitions. [2022-02-20 23:48:14,541 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:14,541 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:48:14,541 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:14,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-02-20 23:48:14,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-02-20 23:48:14,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 127 transitions. [2022-02-20 23:48:14,663 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:14,665 INFO L225 Difference]: With dead ends: 96 [2022-02-20 23:48:14,665 INFO L226 Difference]: Without dead ends: 96 [2022-02-20 23:48:14,666 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:48:14,667 INFO L933 BasicCegarLoop]: 32 mSDtfsCounter, 151 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 151 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:14,667 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [151 Valid, 45 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:14,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-02-20 23:48:14,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 78. [2022-02-20 23:48:14,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:14,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,673 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,673 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:14,677 INFO L93 Difference]: Finished difference Result 96 states and 106 transitions. [2022-02-20 23:48:14,677 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 106 transitions. [2022-02-20 23:48:14,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:14,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:14,678 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 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 96 states. [2022-02-20 23:48:14,678 INFO L87 Difference]: Start difference. First operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 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 96 states. [2022-02-20 23:48:14,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:14,682 INFO L93 Difference]: Finished difference Result 96 states and 106 transitions. [2022-02-20 23:48:14,682 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 106 transitions. [2022-02-20 23:48:14,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:14,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:14,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:14,683 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:14,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 52 states have (on average 1.75) internal successors, (91), 77 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 91 transitions. [2022-02-20 23:48:14,686 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 91 transitions. Word has length 8 [2022-02-20 23:48:14,686 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:14,686 INFO L470 AbstractCegarLoop]: Abstraction has 78 states and 91 transitions. [2022-02-20 23:48:14,686 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,686 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 91 transitions. [2022-02-20 23:48:14,687 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:48:14,687 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:14,687 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:14,687 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:48:14,687 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:14,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:14,688 INFO L85 PathProgramCache]: Analyzing trace with hash 620871762, now seen corresponding path program 1 times [2022-02-20 23:48:14,688 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:14,689 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1390181539] [2022-02-20 23:48:14,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:14,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:14,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:14,751 INFO L290 TraceCheckUtils]: 0: Hoare triple {818#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {818#true} is VALID [2022-02-20 23:48:14,752 INFO L290 TraceCheckUtils]: 1: Hoare triple {818#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {820#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:14,753 INFO L290 TraceCheckUtils]: 2: Hoare triple {820#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~a~0#1.base|)))} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {820#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:14,753 INFO L290 TraceCheckUtils]: 3: Hoare triple {820#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:14,754 INFO L290 TraceCheckUtils]: 4: Hoare triple {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:14,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:14,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:14,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {821#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(4 + main_~p~0#1.offset <= #length[main_~p~0#1.base] && 0 <= main_~p~0#1.offset); {819#false} is VALID [2022-02-20 23:48:14,756 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:48:14,756 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:14,757 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1390181539] [2022-02-20 23:48:14,757 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1390181539] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:14,757 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:14,757 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:14,757 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2102591280] [2022-02-20 23:48:14,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:14,758 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:48:14,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:14,758 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:14,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:14,766 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:14,766 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:14,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:14,767 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:14,767 INFO L87 Difference]: Start difference. First operand 78 states and 91 transitions. Second operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,091 INFO L93 Difference]: Finished difference Result 116 states and 130 transitions. [2022-02-20 23:48:15,091 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:15,091 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:48:15,091 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:15,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 148 transitions. [2022-02-20 23:48:15,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 148 transitions. [2022-02-20 23:48:15,096 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 148 transitions. [2022-02-20 23:48:15,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:15,239 INFO L225 Difference]: With dead ends: 116 [2022-02-20 23:48:15,239 INFO L226 Difference]: Without dead ends: 116 [2022-02-20 23:48:15,239 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:48:15,240 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 165 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 165 SdHoareTripleChecker+Valid, 56 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:15,241 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [165 Valid, 56 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:15,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-02-20 23:48:15,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 102. [2022-02-20 23:48:15,246 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:15,246 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,247 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,247 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,250 INFO L93 Difference]: Finished difference Result 116 states and 130 transitions. [2022-02-20 23:48:15,251 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 130 transitions. [2022-02-20 23:48:15,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:15,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:15,252 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 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 116 states. [2022-02-20 23:48:15,252 INFO L87 Difference]: Start difference. First operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 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 116 states. [2022-02-20 23:48:15,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,256 INFO L93 Difference]: Finished difference Result 116 states and 130 transitions. [2022-02-20 23:48:15,256 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 130 transitions. [2022-02-20 23:48:15,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:15,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:15,257 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:15,257 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:15,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 76 states have (on average 1.5394736842105263) internal successors, (117), 101 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 117 transitions. [2022-02-20 23:48:15,260 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 117 transitions. Word has length 8 [2022-02-20 23:48:15,260 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:15,261 INFO L470 AbstractCegarLoop]: Abstraction has 102 states and 117 transitions. [2022-02-20 23:48:15,261 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,261 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 117 transitions. [2022-02-20 23:48:15,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:48:15,262 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:15,262 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:15,262 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:48:15,262 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:15,263 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:15,263 INFO L85 PathProgramCache]: Analyzing trace with hash 623916195, now seen corresponding path program 1 times [2022-02-20 23:48:15,263 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:15,263 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [357448379] [2022-02-20 23:48:15,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:15,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:15,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:15,368 INFO L290 TraceCheckUtils]: 0: Hoare triple {1276#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {1276#true} is VALID [2022-02-20 23:48:15,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {1276#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {1276#true} is VALID [2022-02-20 23:48:15,368 INFO L290 TraceCheckUtils]: 2: Hoare triple {1276#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {1276#true} is VALID [2022-02-20 23:48:15,369 INFO L290 TraceCheckUtils]: 3: Hoare triple {1276#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {1276#true} is VALID [2022-02-20 23:48:15,369 INFO L290 TraceCheckUtils]: 4: Hoare triple {1276#true} main_#t~short5#1 := main_~i~0#1 < 20; {1276#true} is VALID [2022-02-20 23:48:15,369 INFO L290 TraceCheckUtils]: 5: Hoare triple {1276#true} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {1276#true} is VALID [2022-02-20 23:48:15,369 INFO L290 TraceCheckUtils]: 6: Hoare triple {1276#true} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {1276#true} is VALID [2022-02-20 23:48:15,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {1276#true} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {1276#true} is VALID [2022-02-20 23:48:15,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {1276#true} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {1276#true} is VALID [2022-02-20 23:48:15,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {1276#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {1278#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:48:15,371 INFO L290 TraceCheckUtils]: 10: Hoare triple {1278#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {1279#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) |ULTIMATE.start_main_#t~mem11#1|))} is VALID [2022-02-20 23:48:15,372 INFO L290 TraceCheckUtils]: 11: Hoare triple {1279#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) |ULTIMATE.start_main_#t~mem11#1|))} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {1280#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3))} is VALID [2022-02-20 23:48:15,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {1280#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3))} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {1281#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= 3 |ULTIMATE.start_main_#t~mem17#1|))} is VALID [2022-02-20 23:48:15,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {1281#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= 3 |ULTIMATE.start_main_#t~mem17#1|))} assume 3 != main_#t~mem17#1 || main_~i~0#1 > 20;havoc main_#t~mem17#1; {1277#false} is VALID [2022-02-20 23:48:15,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {1277#false} assume !false; {1277#false} is VALID [2022-02-20 23:48:15,373 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:48:15,374 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:15,374 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [357448379] [2022-02-20 23:48:15,374 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [357448379] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:15,374 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:15,374 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:48:15,374 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [423400125] [2022-02-20 23:48:15,375 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:15,375 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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 15 [2022-02-20 23:48:15,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:15,376 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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:48:15,387 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:48:15,387 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:15,388 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:15,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:15,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:15,389 INFO L87 Difference]: Start difference. First operand 102 states and 117 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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:48:15,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,707 INFO L93 Difference]: Finished difference Result 132 states and 147 transitions. [2022-02-20 23:48:15,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:15,707 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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 15 [2022-02-20 23:48:15,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:15,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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:48:15,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:48:15,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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:48:15,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:48:15,711 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 123 transitions. [2022-02-20 23:48:15,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:15,815 INFO L225 Difference]: With dead ends: 132 [2022-02-20 23:48:15,815 INFO L226 Difference]: Without dead ends: 132 [2022-02-20 23:48:15,816 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:15,817 INFO L933 BasicCegarLoop]: 70 mSDtfsCounter, 36 mSDsluCounter, 177 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 147 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:15,817 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 247 Invalid, 147 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 141 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:15,818 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-02-20 23:48:15,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 103. [2022-02-20 23:48:15,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:15,822 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,822 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,823 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,826 INFO L93 Difference]: Finished difference Result 132 states and 147 transitions. [2022-02-20 23:48:15,827 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 147 transitions. [2022-02-20 23:48:15,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:15,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:15,828 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 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 132 states. [2022-02-20 23:48:15,828 INFO L87 Difference]: Start difference. First operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 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 132 states. [2022-02-20 23:48:15,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:15,832 INFO L93 Difference]: Finished difference Result 132 states and 147 transitions. [2022-02-20 23:48:15,832 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 147 transitions. [2022-02-20 23:48:15,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:15,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:15,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:15,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:15,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 77 states have (on average 1.5324675324675325) internal successors, (118), 102 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 118 transitions. [2022-02-20 23:48:15,836 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 118 transitions. Word has length 15 [2022-02-20 23:48:15,836 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:15,837 INFO L470 AbstractCegarLoop]: Abstraction has 103 states and 118 transitions. [2022-02-20 23:48:15,837 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 6 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:48:15,837 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 118 transitions. [2022-02-20 23:48:15,837 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:48:15,837 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:15,838 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:15,838 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:48:15,838 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:15,839 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:15,839 INFO L85 PathProgramCache]: Analyzing trace with hash -1684958094, now seen corresponding path program 1 times [2022-02-20 23:48:15,839 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:15,839 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1128505476] [2022-02-20 23:48:15,840 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:15,840 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:15,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:15,970 INFO L290 TraceCheckUtils]: 0: Hoare triple {1785#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {1785#true} is VALID [2022-02-20 23:48:15,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {1785#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {1785#true} is VALID [2022-02-20 23:48:15,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {1785#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {1785#true} is VALID [2022-02-20 23:48:15,971 INFO L290 TraceCheckUtils]: 3: Hoare triple {1785#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:15,972 INFO L290 TraceCheckUtils]: 4: Hoare triple {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:15,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:15,976 INFO L290 TraceCheckUtils]: 6: Hoare triple {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:15,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {1787#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {1788#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:15,978 INFO L290 TraceCheckUtils]: 8: Hoare triple {1788#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {1789#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 3)} is VALID [2022-02-20 23:48:15,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {1789#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 3)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {1790#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3)} is VALID [2022-02-20 23:48:15,979 INFO L290 TraceCheckUtils]: 10: Hoare triple {1790#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 3)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {1791#(= 3 |ULTIMATE.start_main_#t~mem11#1|)} is VALID [2022-02-20 23:48:15,980 INFO L290 TraceCheckUtils]: 11: Hoare triple {1791#(= 3 |ULTIMATE.start_main_#t~mem11#1|)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {1786#false} is VALID [2022-02-20 23:48:15,980 INFO L290 TraceCheckUtils]: 12: Hoare triple {1786#false} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {1786#false} is VALID [2022-02-20 23:48:15,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {1786#false} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {1786#false} is VALID [2022-02-20 23:48:15,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {1786#false} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {1786#false} is VALID [2022-02-20 23:48:15,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {1786#false} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {1786#false} is VALID [2022-02-20 23:48:15,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {1786#false} assume !false; {1786#false} is VALID [2022-02-20 23:48:15,981 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:48:15,982 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:15,982 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1128505476] [2022-02-20 23:48:15,982 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1128505476] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:15,982 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:15,982 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:48:15,983 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372386767] [2022-02-20 23:48:15,983 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:15,983 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:48:15,984 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:15,984 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:15,997 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:15,997 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:48:15,997 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:15,998 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:48:15,998 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:15,998 INFO L87 Difference]: Start difference. First operand 103 states and 118 transitions. Second operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:16,440 INFO L93 Difference]: Finished difference Result 153 states and 166 transitions. [2022-02-20 23:48:16,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:48:16,441 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:48:16,441 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:16,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 167 transitions. [2022-02-20 23:48:16,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 167 transitions. [2022-02-20 23:48:16,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 167 transitions. [2022-02-20 23:48:16,587 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:16,589 INFO L225 Difference]: With dead ends: 153 [2022-02-20 23:48:16,590 INFO L226 Difference]: Without dead ends: 153 [2022-02-20 23:48:16,590 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:48:16,591 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 122 mSDsluCounter, 149 mSDsCounter, 0 mSdLazyCounter, 198 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 122 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 198 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:16,591 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [122 Valid, 199 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 198 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:48:16,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2022-02-20 23:48:16,596 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 106. [2022-02-20 23:48:16,596 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:16,596 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,596 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,597 INFO L87 Difference]: Start difference. First operand 153 states. Second operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:16,600 INFO L93 Difference]: Finished difference Result 153 states and 166 transitions. [2022-02-20 23:48:16,600 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 166 transitions. [2022-02-20 23:48:16,601 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:16,601 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:16,601 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 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:48:16,602 INFO L87 Difference]: Start difference. First operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 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:48:16,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:16,605 INFO L93 Difference]: Finished difference Result 153 states and 166 transitions. [2022-02-20 23:48:16,606 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 166 transitions. [2022-02-20 23:48:16,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:16,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:16,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:16,606 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:16,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 80 states have (on average 1.5125) internal successors, (121), 105 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 121 transitions. [2022-02-20 23:48:16,609 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 121 transitions. Word has length 17 [2022-02-20 23:48:16,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:16,610 INFO L470 AbstractCegarLoop]: Abstraction has 106 states and 121 transitions. [2022-02-20 23:48:16,610 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:16,610 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 121 transitions. [2022-02-20 23:48:16,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:16,610 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:16,611 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:16,611 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:48:16,611 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr36ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:16,612 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:16,612 INFO L85 PathProgramCache]: Analyzing trace with hash -1529942363, now seen corresponding path program 1 times [2022-02-20 23:48:16,612 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:16,612 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [108122369] [2022-02-20 23:48:16,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:16,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:16,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:16,712 INFO L290 TraceCheckUtils]: 0: Hoare triple {2361#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {2361#true} is VALID [2022-02-20 23:48:16,713 INFO L290 TraceCheckUtils]: 1: Hoare triple {2361#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,713 INFO L290 TraceCheckUtils]: 2: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,714 INFO L290 TraceCheckUtils]: 3: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,714 INFO L290 TraceCheckUtils]: 4: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} main_#t~short5#1 := main_~i~0#1 < 20; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,714 INFO L290 TraceCheckUtils]: 5: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,715 INFO L290 TraceCheckUtils]: 6: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,715 INFO L290 TraceCheckUtils]: 7: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,716 INFO L290 TraceCheckUtils]: 8: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,716 INFO L290 TraceCheckUtils]: 9: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,717 INFO L290 TraceCheckUtils]: 10: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,717 INFO L290 TraceCheckUtils]: 11: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,717 INFO L290 TraceCheckUtils]: 12: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,718 INFO L290 TraceCheckUtils]: 13: Hoare triple {2363#(<= (+ |ULTIMATE.start_main_~a~0#1.base| 1) |#StackHeapBarrier|)} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,719 INFO L290 TraceCheckUtils]: 14: Hoare triple {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,719 INFO L290 TraceCheckUtils]: 15: Hoare triple {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,719 INFO L290 TraceCheckUtils]: 16: Hoare triple {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} assume 0 == main_~p~0#1.offset; {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:16,720 INFO L290 TraceCheckUtils]: 17: Hoare triple {2364#(<= (+ |ULTIMATE.start_main_~p~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~p~0#1.base < #StackHeapBarrier); {2362#false} is VALID [2022-02-20 23:48:16,720 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:48:16,720 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:16,721 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [108122369] [2022-02-20 23:48:16,721 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [108122369] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:16,721 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:16,721 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:16,721 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [860532175] [2022-02-20 23:48:16,722 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:16,722 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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 18 [2022-02-20 23:48:16,722 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:16,722 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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:48:16,735 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:48:16,735 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:16,735 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:16,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:16,736 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:16,736 INFO L87 Difference]: Start difference. First operand 106 states and 121 transitions. Second operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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:48:16,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:16,933 INFO L93 Difference]: Finished difference Result 112 states and 126 transitions. [2022-02-20 23:48:16,934 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:16,934 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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 18 [2022-02-20 23:48:16,934 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:16,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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:48:16,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-02-20 23:48:16,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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:48:16,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-02-20 23:48:16,937 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 126 transitions. [2022-02-20 23:48:17,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:17,040 INFO L225 Difference]: With dead ends: 112 [2022-02-20 23:48:17,040 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:48:17,041 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:48:17,041 INFO L933 BasicCegarLoop]: 51 mSDtfsCounter, 141 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 81 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:17,042 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [141 Valid, 77 Invalid, 81 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:17,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:48:17,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 108. [2022-02-20 23:48:17,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:17,046 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,046 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,046 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:17,049 INFO L93 Difference]: Finished difference Result 112 states and 126 transitions. [2022-02-20 23:48:17,049 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 126 transitions. [2022-02-20 23:48:17,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:17,049 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:17,049 INFO L74 IsIncluded]: Start isIncluded. First operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 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 112 states. [2022-02-20 23:48:17,050 INFO L87 Difference]: Start difference. First operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 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 112 states. [2022-02-20 23:48:17,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:17,052 INFO L93 Difference]: Finished difference Result 112 states and 126 transitions. [2022-02-20 23:48:17,053 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 126 transitions. [2022-02-20 23:48:17,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:17,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:17,053 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:17,053 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:17,054 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 108 states, 82 states have (on average 1.5) internal successors, (123), 107 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 123 transitions. [2022-02-20 23:48:17,056 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 123 transitions. Word has length 18 [2022-02-20 23:48:17,056 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:17,056 INFO L470 AbstractCegarLoop]: Abstraction has 108 states and 123 transitions. [2022-02-20 23:48:17,056 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 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:48:17,057 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 123 transitions. [2022-02-20 23:48:17,057 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:48:17,057 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:17,057 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:17,057 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:48:17,058 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr39ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:17,058 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:17,058 INFO L85 PathProgramCache]: Analyzing trace with hash -1395789589, now seen corresponding path program 1 times [2022-02-20 23:48:17,058 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:17,058 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [8972992] [2022-02-20 23:48:17,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:17,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:17,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:17,122 INFO L290 TraceCheckUtils]: 0: Hoare triple {2813#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {2813#true} is VALID [2022-02-20 23:48:17,123 INFO L290 TraceCheckUtils]: 1: Hoare triple {2813#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,123 INFO L290 TraceCheckUtils]: 2: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,123 INFO L290 TraceCheckUtils]: 3: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,124 INFO L290 TraceCheckUtils]: 4: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short5#1 := main_~i~0#1 < 20; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,125 INFO L290 TraceCheckUtils]: 6: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,125 INFO L290 TraceCheckUtils]: 7: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,126 INFO L290 TraceCheckUtils]: 9: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,126 INFO L290 TraceCheckUtils]: 10: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,127 INFO L290 TraceCheckUtils]: 11: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,128 INFO L290 TraceCheckUtils]: 12: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {2815#(= (store |#valid| |ULTIMATE.start_main_~a~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,130 INFO L290 TraceCheckUtils]: 14: Hoare triple {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,131 INFO L290 TraceCheckUtils]: 15: Hoare triple {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~p~0#1.offset; {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,131 INFO L290 TraceCheckUtils]: 17: Hoare triple {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~p~0#1.base < #StackHeapBarrier; {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:17,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {2816#(= (store |#valid| |ULTIMATE.start_main_~p~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_#res#1 := 0; {2817#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:17,132 INFO L290 TraceCheckUtils]: 19: Hoare triple {2817#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {2814#false} is VALID [2022-02-20 23:48:17,133 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:48:17,133 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:17,133 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [8972992] [2022-02-20 23:48:17,133 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [8972992] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:17,133 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:17,133 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:17,134 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [278444702] [2022-02-20 23:48:17,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:17,134 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 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 20 [2022-02-20 23:48:17,134 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:17,135 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,149 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:17,149 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:17,149 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:17,150 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:17,150 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:17,150 INFO L87 Difference]: Start difference. First operand 108 states and 123 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:17,462 INFO L93 Difference]: Finished difference Result 138 states and 154 transitions. [2022-02-20 23:48:17,462 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:17,462 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 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 20 [2022-02-20 23:48:17,462 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:17,462 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 128 transitions. [2022-02-20 23:48:17,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 128 transitions. [2022-02-20 23:48:17,465 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 128 transitions. [2022-02-20 23:48:17,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:17,565 INFO L225 Difference]: With dead ends: 138 [2022-02-20 23:48:17,565 INFO L226 Difference]: Without dead ends: 134 [2022-02-20 23:48:17,565 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:48:17,566 INFO L933 BasicCegarLoop]: 65 mSDtfsCounter, 72 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 135 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 142 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 135 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:17,566 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 185 Invalid, 142 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 135 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:17,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 134 states. [2022-02-20 23:48:17,570 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 134 to 112. [2022-02-20 23:48:17,571 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:17,571 INFO L82 GeneralOperation]: Start isEquivalent. First operand 134 states. Second operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,571 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,572 INFO L87 Difference]: Start difference. First operand 134 states. Second operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:17,575 INFO L93 Difference]: Finished difference Result 134 states and 150 transitions. [2022-02-20 23:48:17,575 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 150 transitions. [2022-02-20 23:48:17,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:17,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:17,576 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 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 134 states. [2022-02-20 23:48:17,576 INFO L87 Difference]: Start difference. First operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 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 134 states. [2022-02-20 23:48:17,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:17,579 INFO L93 Difference]: Finished difference Result 134 states and 150 transitions. [2022-02-20 23:48:17,579 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 150 transitions. [2022-02-20 23:48:17,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:17,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:17,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:17,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:17,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 86 states have (on average 1.4767441860465116) internal successors, (127), 111 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 127 transitions. [2022-02-20 23:48:17,582 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 127 transitions. Word has length 20 [2022-02-20 23:48:17,583 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:17,583 INFO L470 AbstractCegarLoop]: Abstraction has 112 states and 127 transitions. [2022-02-20 23:48:17,583 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:17,583 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 127 transitions. [2022-02-20 23:48:17,583 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:48:17,584 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:17,584 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:17,584 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:48:17,584 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:17,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:17,585 INFO L85 PathProgramCache]: Analyzing trace with hash -1499534887, now seen corresponding path program 1 times [2022-02-20 23:48:17,585 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:17,585 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1665816477] [2022-02-20 23:48:17,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:17,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:17,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:17,640 INFO L290 TraceCheckUtils]: 0: Hoare triple {3344#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {3344#true} is VALID [2022-02-20 23:48:17,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {3344#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {3344#true} is VALID [2022-02-20 23:48:17,641 INFO L290 TraceCheckUtils]: 2: Hoare triple {3344#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {3344#true} is VALID [2022-02-20 23:48:17,641 INFO L290 TraceCheckUtils]: 3: Hoare triple {3344#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {3344#true} is VALID [2022-02-20 23:48:17,641 INFO L290 TraceCheckUtils]: 4: Hoare triple {3344#true} main_#t~short5#1 := main_~i~0#1 < 20; {3344#true} is VALID [2022-02-20 23:48:17,642 INFO L290 TraceCheckUtils]: 5: Hoare triple {3344#true} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {3344#true} is VALID [2022-02-20 23:48:17,642 INFO L290 TraceCheckUtils]: 6: Hoare triple {3344#true} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {3344#true} is VALID [2022-02-20 23:48:17,642 INFO L290 TraceCheckUtils]: 7: Hoare triple {3344#true} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {3344#true} is VALID [2022-02-20 23:48:17,642 INFO L290 TraceCheckUtils]: 8: Hoare triple {3344#true} havoc main_#t~nondet7#1; {3344#true} is VALID [2022-02-20 23:48:17,643 INFO L290 TraceCheckUtils]: 9: Hoare triple {3344#true} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {3344#true} is VALID [2022-02-20 23:48:17,643 INFO L290 TraceCheckUtils]: 10: Hoare triple {3344#true} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {3344#true} is VALID [2022-02-20 23:48:17,643 INFO L290 TraceCheckUtils]: 11: Hoare triple {3344#true} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {3344#true} is VALID [2022-02-20 23:48:17,644 INFO L290 TraceCheckUtils]: 12: Hoare triple {3344#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {3346#(= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,644 INFO L290 TraceCheckUtils]: 13: Hoare triple {3346#(= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1)} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {3346#(= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,645 INFO L290 TraceCheckUtils]: 14: Hoare triple {3346#(= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {3347#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:17,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {3347#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {3348#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:48:17,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {3348#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,647 INFO L290 TraceCheckUtils]: 17: Hoare triple {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} main_#t~short5#1 := main_~i~0#1 < 20; {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,647 INFO L290 TraceCheckUtils]: 18: Hoare triple {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,647 INFO L290 TraceCheckUtils]: 19: Hoare triple {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:17,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {3349#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !(1 == #valid[main_~p~0#1.base]); {3345#false} is VALID [2022-02-20 23:48:17,648 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:17,648 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:17,648 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1665816477] [2022-02-20 23:48:17,649 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1665816477] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:17,649 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:17,649 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:17,649 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353298792] [2022-02-20 23:48:17,649 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:17,650 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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 21 [2022-02-20 23:48:17,650 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:17,650 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:17,664 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:48:17,664 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:17,664 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:17,665 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:17,665 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:17,665 INFO L87 Difference]: Start difference. First operand 112 states and 127 transitions. Second operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,090 INFO L93 Difference]: Finished difference Result 113 states and 128 transitions. [2022-02-20 23:48:18,090 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:48:18,090 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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 21 [2022-02-20 23:48:18,090 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:18,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 106 transitions. [2022-02-20 23:48:18,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 106 transitions. [2022-02-20 23:48:18,093 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 106 transitions. [2022-02-20 23:48:18,184 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:18,185 INFO L225 Difference]: With dead ends: 113 [2022-02-20 23:48:18,185 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:48:18,186 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:18,186 INFO L933 BasicCegarLoop]: 55 mSDtfsCounter, 111 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 212 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 212 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:18,187 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [111 Valid, 162 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 212 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:48:18,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:48:18,189 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 110. [2022-02-20 23:48:18,189 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:18,190 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,190 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,191 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,193 INFO L93 Difference]: Finished difference Result 113 states and 128 transitions. [2022-02-20 23:48:18,193 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 128 transitions. [2022-02-20 23:48:18,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:18,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:18,194 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 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:48:18,194 INFO L87 Difference]: Start difference. First operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 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:48:18,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,197 INFO L93 Difference]: Finished difference Result 113 states and 128 transitions. [2022-02-20 23:48:18,197 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 128 transitions. [2022-02-20 23:48:18,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:18,197 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:18,197 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:18,197 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:18,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 86 states have (on average 1.4534883720930232) internal successors, (125), 109 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 125 transitions. [2022-02-20 23:48:18,200 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 125 transitions. Word has length 21 [2022-02-20 23:48:18,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:18,200 INFO L470 AbstractCegarLoop]: Abstraction has 110 states and 125 transitions. [2022-02-20 23:48:18,200 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,201 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 125 transitions. [2022-02-20 23:48:18,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:48:18,201 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:18,201 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:18,201 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:48:18,202 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:18,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:18,202 INFO L85 PathProgramCache]: Analyzing trace with hash -1499534886, now seen corresponding path program 1 times [2022-02-20 23:48:18,202 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:18,203 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [574483291] [2022-02-20 23:48:18,203 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:18,203 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:18,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:18,287 INFO L290 TraceCheckUtils]: 0: Hoare triple {3808#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {3808#true} is VALID [2022-02-20 23:48:18,287 INFO L290 TraceCheckUtils]: 1: Hoare triple {3808#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {3808#true} is VALID [2022-02-20 23:48:18,288 INFO L290 TraceCheckUtils]: 2: Hoare triple {3808#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {3808#true} is VALID [2022-02-20 23:48:18,288 INFO L290 TraceCheckUtils]: 3: Hoare triple {3808#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {3808#true} is VALID [2022-02-20 23:48:18,288 INFO L290 TraceCheckUtils]: 4: Hoare triple {3808#true} main_#t~short5#1 := main_~i~0#1 < 20; {3808#true} is VALID [2022-02-20 23:48:18,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {3808#true} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {3808#true} is VALID [2022-02-20 23:48:18,288 INFO L290 TraceCheckUtils]: 6: Hoare triple {3808#true} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {3808#true} is VALID [2022-02-20 23:48:18,289 INFO L290 TraceCheckUtils]: 7: Hoare triple {3808#true} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {3808#true} is VALID [2022-02-20 23:48:18,289 INFO L290 TraceCheckUtils]: 8: Hoare triple {3808#true} havoc main_#t~nondet7#1; {3808#true} is VALID [2022-02-20 23:48:18,289 INFO L290 TraceCheckUtils]: 9: Hoare triple {3808#true} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {3808#true} is VALID [2022-02-20 23:48:18,289 INFO L290 TraceCheckUtils]: 10: Hoare triple {3808#true} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {3808#true} is VALID [2022-02-20 23:48:18,289 INFO L290 TraceCheckUtils]: 11: Hoare triple {3808#true} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {3808#true} is VALID [2022-02-20 23:48:18,290 INFO L290 TraceCheckUtils]: 12: Hoare triple {3808#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {3810#(and (= (select |#length| |ULTIMATE.start_main_~t~0#1.base|) 12) (= |ULTIMATE.start_main_~t~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,291 INFO L290 TraceCheckUtils]: 13: Hoare triple {3810#(and (= (select |#length| |ULTIMATE.start_main_~t~0#1.base|) 12) (= |ULTIMATE.start_main_~t~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {3810#(and (= (select |#length| |ULTIMATE.start_main_~t~0#1.base|) 12) (= |ULTIMATE.start_main_~t~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,292 INFO L290 TraceCheckUtils]: 14: Hoare triple {3810#(and (= (select |#length| |ULTIMATE.start_main_~t~0#1.base|) 12) (= |ULTIMATE.start_main_~t~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {3811#(and (= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))} is VALID [2022-02-20 23:48:18,292 INFO L290 TraceCheckUtils]: 15: Hoare triple {3811#(and (= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {3812#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} is VALID [2022-02-20 23:48:18,293 INFO L290 TraceCheckUtils]: 16: Hoare triple {3812#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,293 INFO L290 TraceCheckUtils]: 17: Hoare triple {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,294 INFO L290 TraceCheckUtils]: 18: Hoare triple {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,294 INFO L290 TraceCheckUtils]: 19: Hoare triple {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:18,295 INFO L290 TraceCheckUtils]: 20: Hoare triple {3813#(and (= 0 (+ (select |#length| |ULTIMATE.start_main_~p~0#1.base|) (- 12))) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(4 + main_~p~0#1.offset <= #length[main_~p~0#1.base] && 0 <= main_~p~0#1.offset); {3809#false} is VALID [2022-02-20 23:48:18,295 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:18,295 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:18,295 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [574483291] [2022-02-20 23:48:18,296 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [574483291] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:18,296 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:18,296 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:18,296 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1072229276] [2022-02-20 23:48:18,296 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:18,297 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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 21 [2022-02-20 23:48:18,297 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:18,297 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,312 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:48:18,312 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:18,313 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:18,313 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:18,313 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:18,313 INFO L87 Difference]: Start difference. First operand 110 states and 125 transitions. Second operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,801 INFO L93 Difference]: Finished difference Result 108 states and 122 transitions. [2022-02-20 23:48:18,801 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:48:18,802 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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 21 [2022-02-20 23:48:18,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:18,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-02-20 23:48:18,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-02-20 23:48:18,805 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-02-20 23:48:18,893 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:18,895 INFO L225 Difference]: With dead ends: 108 [2022-02-20 23:48:18,895 INFO L226 Difference]: Without dead ends: 108 [2022-02-20 23:48:18,895 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:48:18,896 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 65 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 202 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 219 SdHoareTripleChecker+Invalid, 211 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 202 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:18,896 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 219 Invalid, 211 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 202 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:48:18,897 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-02-20 23:48:18,898 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 92. [2022-02-20 23:48:18,898 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:18,899 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,899 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,899 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,902 INFO L93 Difference]: Finished difference Result 108 states and 122 transitions. [2022-02-20 23:48:18,902 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 122 transitions. [2022-02-20 23:48:18,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:18,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:18,902 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 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 108 states. [2022-02-20 23:48:18,903 INFO L87 Difference]: Start difference. First operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 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 108 states. [2022-02-20 23:48:18,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:18,905 INFO L93 Difference]: Finished difference Result 108 states and 122 transitions. [2022-02-20 23:48:18,905 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 122 transitions. [2022-02-20 23:48:18,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:18,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:18,906 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:18,906 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:18,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 76 states have (on average 1.394736842105263) internal successors, (106), 91 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:18,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 106 transitions. [2022-02-20 23:48:18,908 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 106 transitions. Word has length 21 [2022-02-20 23:48:18,908 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:18,908 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 106 transitions. [2022-02-20 23:48:18,908 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.2) internal successors, (21), 6 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:48:18,908 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 106 transitions. [2022-02-20 23:48:18,909 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:18,909 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:18,909 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:18,909 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:48:18,909 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:18,910 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:18,910 INFO L85 PathProgramCache]: Analyzing trace with hash 37796891, now seen corresponding path program 1 times [2022-02-20 23:48:18,910 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:18,910 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1248877750] [2022-02-20 23:48:18,910 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:18,910 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:18,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:19,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {4243#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {4243#true} is VALID [2022-02-20 23:48:19,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {4243#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {4245#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:19,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {4245#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {4245#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:19,034 INFO L290 TraceCheckUtils]: 3: Hoare triple {4245#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,034 INFO L290 TraceCheckUtils]: 4: Hoare triple {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,035 INFO L290 TraceCheckUtils]: 5: Hoare triple {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,035 INFO L290 TraceCheckUtils]: 6: Hoare triple {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,037 INFO L290 TraceCheckUtils]: 8: Hoare triple {4246#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:19,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:19,039 INFO L290 TraceCheckUtils]: 10: Hoare triple {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:19,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:19,040 INFO L290 TraceCheckUtils]: 12: Hoare triple {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:19,041 INFO L290 TraceCheckUtils]: 13: Hoare triple {4247#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {4248#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {4248#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {4249#(and (= |ULTIMATE.start_main_#t~mem18#1.offset| 0) (= |ULTIMATE.start_main_#t~mem18#1.base| 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,042 INFO L290 TraceCheckUtils]: 15: Hoare triple {4249#(and (= |ULTIMATE.start_main_#t~mem18#1.offset| 0) (= |ULTIMATE.start_main_#t~mem18#1.base| 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {4244#false} is VALID [2022-02-20 23:48:19,042 INFO L290 TraceCheckUtils]: 16: Hoare triple {4244#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L570 {4244#false} is VALID [2022-02-20 23:48:19,042 INFO L290 TraceCheckUtils]: 17: Hoare triple {4244#false} main_~t~0#1.base, main_~t~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {4244#false} is VALID [2022-02-20 23:48:19,042 INFO L290 TraceCheckUtils]: 18: Hoare triple {4244#false} assume 0 == main_~p~0#1.offset; {4244#false} is VALID [2022-02-20 23:48:19,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {4244#false} assume main_~p~0#1.base < #StackHeapBarrier; {4244#false} is VALID [2022-02-20 23:48:19,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {4244#false} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_~p~0#1.base, main_~p~0#1.offset := main_~t~0#1.base, main_~t~0#1.offset; {4244#false} is VALID [2022-02-20 23:48:19,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {4244#false} assume !(1 == #valid[main_~p~0#1.base]); {4244#false} is VALID [2022-02-20 23:48:19,069 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:19,069 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:19,069 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1248877750] [2022-02-20 23:48:19,070 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1248877750] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:19,070 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:19,070 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:48:19,070 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [609427196] [2022-02-20 23:48:19,070 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:19,071 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:19,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:19,071 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:19,087 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:48:19,087 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:19,088 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:48:19,088 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:19,088 INFO L87 Difference]: Start difference. First operand 92 states and 106 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:19,463 INFO L93 Difference]: Finished difference Result 110 states and 122 transitions. [2022-02-20 23:48:19,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:19,463 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:48:19,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:19,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:48:19,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:48:19,466 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 123 transitions. [2022-02-20 23:48:19,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:19,564 INFO L225 Difference]: With dead ends: 110 [2022-02-20 23:48:19,564 INFO L226 Difference]: Without dead ends: 101 [2022-02-20 23:48:19,565 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:19,565 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 118 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 118 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 186 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:19,565 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [118 Valid, 160 Invalid, 186 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 177 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:19,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-02-20 23:48:19,567 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 83. [2022-02-20 23:48:19,567 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:19,567 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,567 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,568 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:19,569 INFO L93 Difference]: Finished difference Result 101 states and 113 transitions. [2022-02-20 23:48:19,569 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 113 transitions. [2022-02-20 23:48:19,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:19,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:19,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 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:48:19,570 INFO L87 Difference]: Start difference. First operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 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:48:19,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:19,571 INFO L93 Difference]: Finished difference Result 101 states and 113 transitions. [2022-02-20 23:48:19,571 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 113 transitions. [2022-02-20 23:48:19,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:19,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:19,572 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:19,572 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:19,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 67 states have (on average 1.4328358208955223) internal successors, (96), 82 states have internal predecessors, (96), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 96 transitions. [2022-02-20 23:48:19,573 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 96 transitions. Word has length 22 [2022-02-20 23:48:19,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:19,573 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 96 transitions. [2022-02-20 23:48:19,574 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:19,574 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 96 transitions. [2022-02-20 23:48:19,574 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:48:19,574 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:19,574 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:19,574 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:48:19,574 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:19,575 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:19,575 INFO L85 PathProgramCache]: Analyzing trace with hash 615949290, now seen corresponding path program 1 times [2022-02-20 23:48:19,575 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:19,575 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [382684300] [2022-02-20 23:48:19,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:19,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:19,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:19,922 INFO L290 TraceCheckUtils]: 0: Hoare triple {4651#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {4651#true} is VALID [2022-02-20 23:48:19,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {4653#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:19,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {4653#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {4653#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:19,924 INFO L290 TraceCheckUtils]: 3: Hoare triple {4653#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,924 INFO L290 TraceCheckUtils]: 4: Hoare triple {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,925 INFO L290 TraceCheckUtils]: 6: Hoare triple {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,926 INFO L290 TraceCheckUtils]: 7: Hoare triple {4654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {4655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:19,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {4655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {4655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:19,928 INFO L290 TraceCheckUtils]: 9: Hoare triple {4655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {4656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:19,928 INFO L290 TraceCheckUtils]: 10: Hoare triple {4656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {4657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:19,929 INFO L290 TraceCheckUtils]: 11: Hoare triple {4657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {4657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:19,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {4657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {4658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,941 INFO L290 TraceCheckUtils]: 13: Hoare triple {4658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {4658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,942 INFO L290 TraceCheckUtils]: 14: Hoare triple {4658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {4659#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,943 INFO L290 TraceCheckUtils]: 15: Hoare triple {4659#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {4660#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:19,944 INFO L290 TraceCheckUtils]: 16: Hoare triple {4660#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,944 INFO L290 TraceCheckUtils]: 17: Hoare triple {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} main_#t~short5#1 := main_~i~0#1 < 20; {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,945 INFO L290 TraceCheckUtils]: 18: Hoare triple {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,945 INFO L290 TraceCheckUtils]: 19: Hoare triple {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,947 INFO L290 TraceCheckUtils]: 20: Hoare triple {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,948 INFO L290 TraceCheckUtils]: 21: Hoare triple {4661#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {4662#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} is VALID [2022-02-20 23:48:19,948 INFO L290 TraceCheckUtils]: 22: Hoare triple {4662#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4))))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,949 INFO L290 TraceCheckUtils]: 23: Hoare triple {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {4663#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {4664#(and (not (= |ULTIMATE.start_main_#t~mem12#1| 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:19,951 INFO L290 TraceCheckUtils]: 26: Hoare triple {4664#(and (not (= |ULTIMATE.start_main_#t~mem12#1| 0)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {4652#false} is VALID [2022-02-20 23:48:19,951 INFO L290 TraceCheckUtils]: 27: Hoare triple {4652#false} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {4652#false} is VALID [2022-02-20 23:48:19,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {4652#false} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {4652#false} is VALID [2022-02-20 23:48:19,951 INFO L290 TraceCheckUtils]: 29: Hoare triple {4652#false} assume !false; {4652#false} is VALID [2022-02-20 23:48:19,952 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:48:19,952 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:19,952 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [382684300] [2022-02-20 23:48:19,952 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [382684300] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:19,952 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [124028502] [2022-02-20 23:48:19,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:19,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:19,953 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:19,959 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:48:19,972 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:48:20,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:20,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 199 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:48:20,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:20,102 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:20,278 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 13 treesize of output 9 [2022-02-20 23:48:20,463 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:20,467 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 21 [2022-02-20 23:48:20,545 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:20,545 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:20,699 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:20,713 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:20,714 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:20,716 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:20,717 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 33 [2022-02-20 23:48:20,784 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 20 treesize of output 8 [2022-02-20 23:48:20,957 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 24 [2022-02-20 23:48:21,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 24 [2022-02-20 23:48:21,213 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:21,214 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:21,215 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 27 treesize of output 11 [2022-02-20 23:48:21,249 INFO L290 TraceCheckUtils]: 0: Hoare triple {4651#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {4651#true} is VALID [2022-02-20 23:48:21,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {4671#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:21,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {4671#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {4671#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:21,251 INFO L290 TraceCheckUtils]: 3: Hoare triple {4671#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,252 INFO L290 TraceCheckUtils]: 4: Hoare triple {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,252 INFO L290 TraceCheckUtils]: 5: Hoare triple {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,253 INFO L290 TraceCheckUtils]: 6: Hoare triple {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,254 INFO L290 TraceCheckUtils]: 7: Hoare triple {4678#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {4691#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,254 INFO L290 TraceCheckUtils]: 8: Hoare triple {4691#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} havoc main_#t~nondet7#1; {4691#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,255 INFO L290 TraceCheckUtils]: 9: Hoare triple {4691#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {4698#(and (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,255 INFO L290 TraceCheckUtils]: 10: Hoare triple {4698#(and (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {4702#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,256 INFO L290 TraceCheckUtils]: 11: Hoare triple {4702#(and (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {4706#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,257 INFO L290 TraceCheckUtils]: 12: Hoare triple {4706#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {4710#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,258 INFO L290 TraceCheckUtils]: 13: Hoare triple {4710#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {4710#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {4710#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {4717#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,260 INFO L290 TraceCheckUtils]: 15: Hoare triple {4717#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {4721#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:21,260 INFO L290 TraceCheckUtils]: 16: Hoare triple {4721#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,261 INFO L290 TraceCheckUtils]: 17: Hoare triple {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,265 INFO L290 TraceCheckUtils]: 19: Hoare triple {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,266 INFO L290 TraceCheckUtils]: 20: Hoare triple {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,267 INFO L290 TraceCheckUtils]: 21: Hoare triple {4725#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {4741#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:21,268 INFO L290 TraceCheckUtils]: 22: Hoare triple {4741#(and (<= 0 |ULTIMATE.start_main_~a~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} is VALID [2022-02-20 23:48:21,269 INFO L290 TraceCheckUtils]: 23: Hoare triple {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} is VALID [2022-02-20 23:48:21,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} is VALID [2022-02-20 23:48:21,270 INFO L290 TraceCheckUtils]: 25: Hoare triple {4745#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {4755#(not (= |ULTIMATE.start_main_#t~mem12#1| 0))} is VALID [2022-02-20 23:48:21,270 INFO L290 TraceCheckUtils]: 26: Hoare triple {4755#(not (= |ULTIMATE.start_main_#t~mem12#1| 0))} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {4652#false} is VALID [2022-02-20 23:48:21,270 INFO L290 TraceCheckUtils]: 27: Hoare triple {4652#false} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {4652#false} is VALID [2022-02-20 23:48:21,270 INFO L290 TraceCheckUtils]: 28: Hoare triple {4652#false} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {4652#false} is VALID [2022-02-20 23:48:21,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {4652#false} assume !false; {4652#false} is VALID [2022-02-20 23:48:21,271 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:48:21,271 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:21,328 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) is different from false [2022-02-20 23:48:21,374 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_200) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) is different from false [2022-02-20 23:48:21,384 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |c_#memory_int| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_200) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) is different from false [2022-02-20 23:48:21,411 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= (select (select (store (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| (store (select |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |c_ULTIMATE.start_main_~t~0#1.base| v_ArrVal_200) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) is different from false [2022-02-20 23:48:22,021 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:22,022 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:22,022 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:22,028 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:22,029 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 4 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 3 case distinctions, treesize of input 31 treesize of output 42 [2022-02-20 23:48:22,047 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:22,065 INFO L356 Elim1Store]: treesize reduction 12, result has 58.6 percent of original size [2022-02-20 23:48:22,066 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 46 treesize of output 46 [2022-02-20 23:48:22,087 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 22 treesize of output 18 [2022-02-20 23:48:22,105 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:22,105 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:22,251 INFO L290 TraceCheckUtils]: 29: Hoare triple {4652#false} assume !false; {4652#false} is VALID [2022-02-20 23:48:22,251 INFO L290 TraceCheckUtils]: 28: Hoare triple {4652#false} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {4652#false} is VALID [2022-02-20 23:48:22,252 INFO L290 TraceCheckUtils]: 27: Hoare triple {4652#false} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {4652#false} is VALID [2022-02-20 23:48:22,252 INFO L290 TraceCheckUtils]: 26: Hoare triple {4755#(not (= |ULTIMATE.start_main_#t~mem12#1| 0))} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {4652#false} is VALID [2022-02-20 23:48:22,253 INFO L290 TraceCheckUtils]: 25: Hoare triple {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {4755#(not (= |ULTIMATE.start_main_#t~mem12#1| 0))} is VALID [2022-02-20 23:48:22,253 INFO L290 TraceCheckUtils]: 24: Hoare triple {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:22,253 INFO L290 TraceCheckUtils]: 23: Hoare triple {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:22,254 INFO L290 TraceCheckUtils]: 22: Hoare triple {4790#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4780#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:22,255 INFO L290 TraceCheckUtils]: 21: Hoare triple {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {4790#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:22,257 INFO L290 TraceCheckUtils]: 20: Hoare triple {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,257 INFO L290 TraceCheckUtils]: 19: Hoare triple {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,258 INFO L290 TraceCheckUtils]: 18: Hoare triple {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,258 INFO L290 TraceCheckUtils]: 17: Hoare triple {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} main_#t~short5#1 := main_~i~0#1 < 20; {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {4810#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {4794#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,260 INFO L290 TraceCheckUtils]: 15: Hoare triple {4814#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {4810#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,261 INFO L290 TraceCheckUtils]: 14: Hoare triple {4818#(forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= 0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)))))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {4814#(forall ((v_ArrVal_200 (Array Int Int))) (not (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))} is VALID [2022-02-20 23:48:22,262 INFO L290 TraceCheckUtils]: 13: Hoare triple {4818#(forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= 0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)))))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {4818#(forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= 0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)))))} is VALID [2022-02-20 23:48:22,264 WARN L290 TraceCheckUtils]: 12: Hoare triple {4825#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {4818#(forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= 0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)))))} is UNKNOWN [2022-02-20 23:48:22,266 INFO L290 TraceCheckUtils]: 11: Hoare triple {4829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {4825#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int))) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0))))} is VALID [2022-02-20 23:48:22,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {4833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= |ULTIMATE.start_main_#t~mem8#1| 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {4829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} is VALID [2022-02-20 23:48:22,268 INFO L290 TraceCheckUtils]: 9: Hoare triple {4837#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {4833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= |ULTIMATE.start_main_#t~mem8#1| 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} is VALID [2022-02-20 23:48:22,269 INFO L290 TraceCheckUtils]: 8: Hoare triple {4837#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} havoc main_#t~nondet7#1; {4837#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} is VALID [2022-02-20 23:48:22,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {4837#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (forall ((v_ArrVal_196 Int) (v_ArrVal_200 (Array Int Int)) (|v_ULTIMATE.start_main_~t~0#1.base_9| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_9|) 0)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| 1) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_196)) |v_ULTIMATE.start_main_~t~0#1.base_9| v_ArrVal_200) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)))))} is VALID [2022-02-20 23:48:22,272 INFO L290 TraceCheckUtils]: 6: Hoare triple {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:22,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:22,279 INFO L290 TraceCheckUtils]: 4: Hoare triple {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:22,281 INFO L290 TraceCheckUtils]: 3: Hoare triple {4651#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {4844#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (+ |ULTIMATE.start_main_~a~0#1.offset| 4) |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:22,281 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {4651#true} is VALID [2022-02-20 23:48:22,281 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {4651#true} is VALID [2022-02-20 23:48:22,282 INFO L290 TraceCheckUtils]: 0: Hoare triple {4651#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {4651#true} is VALID [2022-02-20 23:48:22,282 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2022-02-20 23:48:22,282 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [124028502] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:22,283 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:22,283 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 15, 14] total 38 [2022-02-20 23:48:22,283 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [526333342] [2022-02-20 23:48:22,283 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:22,284 INFO L78 Accepts]: Start accepts. Automaton has has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:48:22,284 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:22,284 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:22,374 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 77 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:22,374 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 38 states [2022-02-20 23:48:22,374 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:22,375 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2022-02-20 23:48:22,375 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=904, Unknown=4, NotChecked=268, Total=1406 [2022-02-20 23:48:22,376 INFO L87 Difference]: Start difference. First operand 83 states and 96 transitions. Second operand has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:24,390 INFO L93 Difference]: Finished difference Result 185 states and 205 transitions. [2022-02-20 23:48:24,390 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:48:24,391 INFO L78 Accepts]: Start accepts. Automaton has has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:48:24,391 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:24,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 206 transitions. [2022-02-20 23:48:24,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 206 transitions. [2022-02-20 23:48:24,395 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 206 transitions. [2022-02-20 23:48:24,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 205 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:24,575 INFO L225 Difference]: With dead ends: 185 [2022-02-20 23:48:24,576 INFO L226 Difference]: Without dead ends: 185 [2022-02-20 23:48:24,576 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 39 SyntacticMatches, 3 SemanticMatches, 42 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 638 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=377, Invalid=1195, Unknown=4, NotChecked=316, Total=1892 [2022-02-20 23:48:24,577 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 326 mSDsluCounter, 609 mSDsCounter, 0 mSdLazyCounter, 603 mSolverCounterSat, 71 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 326 SdHoareTripleChecker+Valid, 657 SdHoareTripleChecker+Invalid, 1533 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 71 IncrementalHoareTripleChecker+Valid, 603 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 859 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:24,577 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [326 Valid, 657 Invalid, 1533 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [71 Valid, 603 Invalid, 0 Unknown, 859 Unchecked, 0.6s Time] [2022-02-20 23:48:24,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-02-20 23:48:24,580 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 103. [2022-02-20 23:48:24,580 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:24,580 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,581 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,581 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:24,584 INFO L93 Difference]: Finished difference Result 185 states and 205 transitions. [2022-02-20 23:48:24,584 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 205 transitions. [2022-02-20 23:48:24,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:24,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:24,585 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 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 185 states. [2022-02-20 23:48:24,585 INFO L87 Difference]: Start difference. First operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 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 185 states. [2022-02-20 23:48:24,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:24,588 INFO L93 Difference]: Finished difference Result 185 states and 205 transitions. [2022-02-20 23:48:24,589 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 205 transitions. [2022-02-20 23:48:24,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:24,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:24,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:24,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:24,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 87 states have (on average 1.3793103448275863) internal successors, (120), 102 states have internal predecessors, (120), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 120 transitions. [2022-02-20 23:48:24,591 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 120 transitions. Word has length 30 [2022-02-20 23:48:24,591 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:24,591 INFO L470 AbstractCegarLoop]: Abstraction has 103 states and 120 transitions. [2022-02-20 23:48:24,592 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 38 states, 38 states have (on average 2.1315789473684212) internal successors, (81), 38 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:24,592 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 120 transitions. [2022-02-20 23:48:24,592 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:48:24,593 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:24,593 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:24,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:24,811 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,SelfDestructingSolverStorable10 [2022-02-20 23:48:24,812 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:24,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:24,812 INFO L85 PathProgramCache]: Analyzing trace with hash 615641460, now seen corresponding path program 1 times [2022-02-20 23:48:24,812 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:24,812 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2037395742] [2022-02-20 23:48:24,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:24,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:24,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:25,005 INFO L290 TraceCheckUtils]: 0: Hoare triple {5538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {5538#true} is VALID [2022-02-20 23:48:25,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {5538#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {5538#true} is VALID [2022-02-20 23:48:25,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {5538#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {5538#true} is VALID [2022-02-20 23:48:25,006 INFO L290 TraceCheckUtils]: 3: Hoare triple {5538#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,007 INFO L290 TraceCheckUtils]: 4: Hoare triple {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,008 INFO L290 TraceCheckUtils]: 6: Hoare triple {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,009 INFO L290 TraceCheckUtils]: 7: Hoare triple {5540#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,013 INFO L290 TraceCheckUtils]: 9: Hoare triple {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,013 INFO L290 TraceCheckUtils]: 10: Hoare triple {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,015 INFO L290 TraceCheckUtils]: 11: Hoare triple {5541#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {5542#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,016 INFO L290 TraceCheckUtils]: 12: Hoare triple {5542#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {5543#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {5543#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {5543#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,017 INFO L290 TraceCheckUtils]: 14: Hoare triple {5543#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {5544#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {5544#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {5545#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:25,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {5545#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,019 INFO L290 TraceCheckUtils]: 17: Hoare triple {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,020 INFO L290 TraceCheckUtils]: 18: Hoare triple {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,020 INFO L290 TraceCheckUtils]: 19: Hoare triple {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,022 INFO L290 TraceCheckUtils]: 21: Hoare triple {5546#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {5547#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {5547#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,023 INFO L290 TraceCheckUtils]: 23: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,023 INFO L290 TraceCheckUtils]: 24: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,023 INFO L290 TraceCheckUtils]: 25: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,024 INFO L290 TraceCheckUtils]: 26: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:25,024 INFO L290 TraceCheckUtils]: 27: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} is VALID [2022-02-20 23:48:25,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {5539#false} is VALID [2022-02-20 23:48:25,025 INFO L290 TraceCheckUtils]: 29: Hoare triple {5539#false} assume !false; {5539#false} is VALID [2022-02-20 23:48:25,025 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:48:25,025 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:25,025 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2037395742] [2022-02-20 23:48:25,026 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2037395742] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:25,026 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1199863843] [2022-02-20 23:48:25,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:25,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:25,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:25,027 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:48:25,030 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:48:25,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:25,120 INFO L263 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 34 conjunts are in the unsatisfiable core [2022-02-20 23:48:25,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:25,135 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:25,297 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:48:25,348 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:25,348 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:25,423 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:25,424 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:48:25,435 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:25,475 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 20 treesize of output 8 [2022-02-20 23:48:25,571 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:25,609 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:25,726 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 15 treesize of output 7 [2022-02-20 23:48:25,730 INFO L290 TraceCheckUtils]: 0: Hoare triple {5538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {5538#true} is VALID [2022-02-20 23:48:25,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {5538#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {5556#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:25,731 INFO L290 TraceCheckUtils]: 2: Hoare triple {5556#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {5556#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:25,732 INFO L290 TraceCheckUtils]: 3: Hoare triple {5556#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,732 INFO L290 TraceCheckUtils]: 4: Hoare triple {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,733 INFO L290 TraceCheckUtils]: 5: Hoare triple {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,733 INFO L290 TraceCheckUtils]: 6: Hoare triple {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,734 INFO L290 TraceCheckUtils]: 7: Hoare triple {5563#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,736 INFO L290 TraceCheckUtils]: 10: Hoare triple {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,737 INFO L290 TraceCheckUtils]: 11: Hoare triple {5576#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {5589#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:25,737 INFO L290 TraceCheckUtils]: 12: Hoare triple {5589#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {5593#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,738 INFO L290 TraceCheckUtils]: 13: Hoare triple {5593#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {5593#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,739 INFO L290 TraceCheckUtils]: 14: Hoare triple {5593#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {5600#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:25,740 INFO L290 TraceCheckUtils]: 15: Hoare triple {5600#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {5604#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:25,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {5604#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,741 INFO L290 TraceCheckUtils]: 17: Hoare triple {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,741 INFO L290 TraceCheckUtils]: 18: Hoare triple {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,742 INFO L290 TraceCheckUtils]: 19: Hoare triple {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,744 INFO L290 TraceCheckUtils]: 21: Hoare triple {5608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {5624#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:25,744 INFO L290 TraceCheckUtils]: 22: Hoare triple {5624#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:25,745 INFO L290 TraceCheckUtils]: 23: Hoare triple {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:25,745 INFO L290 TraceCheckUtils]: 24: Hoare triple {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:25,746 INFO L290 TraceCheckUtils]: 25: Hoare triple {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:25,746 INFO L290 TraceCheckUtils]: 26: Hoare triple {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:25,747 INFO L290 TraceCheckUtils]: 27: Hoare triple {5628#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} is VALID [2022-02-20 23:48:25,747 INFO L290 TraceCheckUtils]: 28: Hoare triple {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {5539#false} is VALID [2022-02-20 23:48:25,747 INFO L290 TraceCheckUtils]: 29: Hoare triple {5539#false} assume !false; {5539#false} is VALID [2022-02-20 23:48:25,748 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:48:25,748 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:25,784 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 1)) is different from false [2022-02-20 23:48:25,811 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_276) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 1)) is different from false [2022-02-20 23:48:25,820 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |c_#memory_int| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_276) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 1)) is different from false [2022-02-20 23:48:25,844 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| (store (select |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |c_ULTIMATE.start_main_~t~0#1.base| v_ArrVal_276) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 1)) is different from false [2022-02-20 23:48:26,006 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:26,010 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:26,010 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 23 treesize of output 29 [2022-02-20 23:48:26,026 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:26,026 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 30 treesize of output 33 [2022-02-20 23:48:26,032 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 9 treesize of output 7 [2022-02-20 23:48:26,328 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:26,329 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:26,424 INFO L290 TraceCheckUtils]: 29: Hoare triple {5539#false} assume !false; {5539#false} is VALID [2022-02-20 23:48:26,426 INFO L290 TraceCheckUtils]: 28: Hoare triple {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {5539#false} is VALID [2022-02-20 23:48:26,427 INFO L290 TraceCheckUtils]: 27: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {5549#(= |ULTIMATE.start_main_#t~mem13#1| 1)} is VALID [2022-02-20 23:48:26,427 INFO L290 TraceCheckUtils]: 26: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,428 INFO L290 TraceCheckUtils]: 25: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,428 INFO L290 TraceCheckUtils]: 23: Hoare triple {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,429 INFO L290 TraceCheckUtils]: 22: Hoare triple {5547#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5548#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {5547#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} is VALID [2022-02-20 23:48:26,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,432 INFO L290 TraceCheckUtils]: 18: Hoare triple {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {5690#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {5674#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,436 INFO L290 TraceCheckUtils]: 15: Hoare triple {5694#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {5690#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {5698#(forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {5694#(forall ((v_ArrVal_276 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {5698#(forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {5698#(forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {5705#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |v_ULTIMATE.start_main_~t~0#1.base_10| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {5698#(forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:26,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {5705#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (forall ((v_ArrVal_272 Int) (v_ArrVal_276 (Array Int Int))) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_272)) |v_ULTIMATE.start_main_~t~0#1.base_10| v_ArrVal_276) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))))} is VALID [2022-02-20 23:48:26,442 INFO L290 TraceCheckUtils]: 10: Hoare triple {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} is VALID [2022-02-20 23:48:26,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} is VALID [2022-02-20 23:48:26,443 INFO L290 TraceCheckUtils]: 8: Hoare triple {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} havoc main_#t~nondet7#1; {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} is VALID [2022-02-20 23:48:26,444 INFO L290 TraceCheckUtils]: 7: Hoare triple {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {5709#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_10| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_10|) 0)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_10| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))))} is VALID [2022-02-20 23:48:26,445 INFO L290 TraceCheckUtils]: 6: Hoare triple {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:26,445 INFO L290 TraceCheckUtils]: 5: Hoare triple {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:26,446 INFO L290 TraceCheckUtils]: 4: Hoare triple {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:26,446 INFO L290 TraceCheckUtils]: 3: Hoare triple {5538#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {5722#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:26,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {5538#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {5538#true} is VALID [2022-02-20 23:48:26,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {5538#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {5538#true} is VALID [2022-02-20 23:48:26,447 INFO L290 TraceCheckUtils]: 0: Hoare triple {5538#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {5538#true} is VALID [2022-02-20 23:48:26,447 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2022-02-20 23:48:26,448 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1199863843] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:26,448 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:26,448 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 12] total 29 [2022-02-20 23:48:26,448 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2120641529] [2022-02-20 23:48:26,448 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:26,450 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:26,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:26,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:26,527 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 73 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:26,527 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-02-20 23:48:26,528 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:26,528 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-02-20 23:48:26,528 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=127, Invalid=485, Unknown=4, NotChecked=196, Total=812 [2022-02-20 23:48:26,529 INFO L87 Difference]: Start difference. First operand 103 states and 120 transitions. Second operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:28,224 INFO L93 Difference]: Finished difference Result 265 states and 298 transitions. [2022-02-20 23:48:28,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:48:28,224 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:28,225 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:28,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 299 transitions. [2022-02-20 23:48:28,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 299 transitions. [2022-02-20 23:48:28,229 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 299 transitions. [2022-02-20 23:48:28,475 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 299 edges. 299 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:28,479 INFO L225 Difference]: With dead ends: 265 [2022-02-20 23:48:28,479 INFO L226 Difference]: Without dead ends: 265 [2022-02-20 23:48:28,480 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 45 SyntacticMatches, 2 SemanticMatches, 33 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 254 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=219, Invalid=723, Unknown=4, NotChecked=244, Total=1190 [2022-02-20 23:48:28,480 INFO L933 BasicCegarLoop]: 58 mSDtfsCounter, 433 mSDsluCounter, 691 mSDsCounter, 0 mSdLazyCounter, 688 mSolverCounterSat, 73 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 433 SdHoareTripleChecker+Valid, 749 SdHoareTripleChecker+Invalid, 1668 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 73 IncrementalHoareTripleChecker+Valid, 688 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 907 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:28,480 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [433 Valid, 749 Invalid, 1668 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [73 Valid, 688 Invalid, 0 Unknown, 907 Unchecked, 0.6s Time] [2022-02-20 23:48:28,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 265 states. [2022-02-20 23:48:28,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 265 to 105. [2022-02-20 23:48:28,483 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:28,483 INFO L82 GeneralOperation]: Start isEquivalent. First operand 265 states. Second operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,483 INFO L74 IsIncluded]: Start isIncluded. First operand 265 states. Second operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,483 INFO L87 Difference]: Start difference. First operand 265 states. Second operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:28,489 INFO L93 Difference]: Finished difference Result 265 states and 298 transitions. [2022-02-20 23:48:28,489 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 298 transitions. [2022-02-20 23:48:28,489 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:28,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:28,490 INFO L74 IsIncluded]: Start isIncluded. First operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 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 265 states. [2022-02-20 23:48:28,490 INFO L87 Difference]: Start difference. First operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 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 265 states. [2022-02-20 23:48:28,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:28,495 INFO L93 Difference]: Finished difference Result 265 states and 298 transitions. [2022-02-20 23:48:28,495 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 298 transitions. [2022-02-20 23:48:28,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:28,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:28,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:28,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:28,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 89 states have (on average 1.3707865168539326) internal successors, (122), 104 states have internal predecessors, (122), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 122 transitions. [2022-02-20 23:48:28,498 INFO L78 Accepts]: Start accepts. Automaton has 105 states and 122 transitions. Word has length 30 [2022-02-20 23:48:28,498 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:28,498 INFO L470 AbstractCegarLoop]: Abstraction has 105 states and 122 transitions. [2022-02-20 23:48:28,498 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:28,498 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 122 transitions. [2022-02-20 23:48:28,499 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:48:28,499 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:28,499 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:28,521 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-02-20 23:48:28,713 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,SelfDestructingSolverStorable11 [2022-02-20 23:48:28,713 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:28,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:28,713 INFO L85 PathProgramCache]: Analyzing trace with hash -1355563894, now seen corresponding path program 1 times [2022-02-20 23:48:28,714 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:28,714 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [307276732] [2022-02-20 23:48:28,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:28,714 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:28,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:28,874 INFO L290 TraceCheckUtils]: 0: Hoare triple {6658#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {6658#true} is VALID [2022-02-20 23:48:28,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {6658#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {6658#true} is VALID [2022-02-20 23:48:28,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {6658#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {6658#true} is VALID [2022-02-20 23:48:28,875 INFO L290 TraceCheckUtils]: 3: Hoare triple {6658#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,876 INFO L290 TraceCheckUtils]: 4: Hoare triple {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,877 INFO L290 TraceCheckUtils]: 6: Hoare triple {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,878 INFO L290 TraceCheckUtils]: 7: Hoare triple {6660#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:28,878 INFO L290 TraceCheckUtils]: 8: Hoare triple {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:28,879 INFO L290 TraceCheckUtils]: 9: Hoare triple {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:28,879 INFO L290 TraceCheckUtils]: 10: Hoare triple {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:28,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {6661#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {6662#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:28,881 INFO L290 TraceCheckUtils]: 12: Hoare triple {6662#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {6663#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,881 INFO L290 TraceCheckUtils]: 13: Hoare triple {6663#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {6663#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,882 INFO L290 TraceCheckUtils]: 14: Hoare triple {6663#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {6664#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:28,883 INFO L290 TraceCheckUtils]: 15: Hoare triple {6664#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {6665#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:28,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {6665#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:28,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:28,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:28,886 INFO L290 TraceCheckUtils]: 19: Hoare triple {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:28,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:28,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {6666#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {6667#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {6667#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,889 INFO L290 TraceCheckUtils]: 23: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,890 INFO L290 TraceCheckUtils]: 25: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:28,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:48:28,891 INFO L290 TraceCheckUtils]: 28: Hoare triple {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {6659#false} is VALID [2022-02-20 23:48:28,891 INFO L290 TraceCheckUtils]: 29: Hoare triple {6659#false} assume !false; {6659#false} is VALID [2022-02-20 23:48:28,892 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:48:28,892 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:28,892 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [307276732] [2022-02-20 23:48:28,893 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [307276732] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:28,893 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [44922663] [2022-02-20 23:48:28,894 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:28,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:28,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:28,896 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:48:28,919 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:48:28,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:28,998 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 34 conjunts are in the unsatisfiable core [2022-02-20 23:48:29,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:29,011 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:29,151 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:48:29,193 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:29,193 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:29,293 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:29,308 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:29,309 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:48:29,347 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 20 treesize of output 8 [2022-02-20 23:48:29,432 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:29,477 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:29,571 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 15 treesize of output 7 [2022-02-20 23:48:29,576 INFO L290 TraceCheckUtils]: 0: Hoare triple {6658#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {6658#true} is VALID [2022-02-20 23:48:29,577 INFO L290 TraceCheckUtils]: 1: Hoare triple {6658#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {6676#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:29,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {6676#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {6676#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:29,578 INFO L290 TraceCheckUtils]: 3: Hoare triple {6676#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,579 INFO L290 TraceCheckUtils]: 4: Hoare triple {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,582 INFO L290 TraceCheckUtils]: 5: Hoare triple {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,582 INFO L290 TraceCheckUtils]: 6: Hoare triple {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,584 INFO L290 TraceCheckUtils]: 7: Hoare triple {6683#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:29,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:29,585 INFO L290 TraceCheckUtils]: 9: Hoare triple {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:29,586 INFO L290 TraceCheckUtils]: 10: Hoare triple {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:29,587 INFO L290 TraceCheckUtils]: 11: Hoare triple {6696#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {6709#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:29,588 INFO L290 TraceCheckUtils]: 12: Hoare triple {6709#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {6713#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {6713#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {6713#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {6713#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {6720#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:29,590 INFO L290 TraceCheckUtils]: 15: Hoare triple {6720#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {6724#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:29,591 INFO L290 TraceCheckUtils]: 16: Hoare triple {6724#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:29,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:29,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:29,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:29,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:29,595 INFO L290 TraceCheckUtils]: 21: Hoare triple {6728#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {6744#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:29,595 INFO L290 TraceCheckUtils]: 22: Hoare triple {6744#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} is VALID [2022-02-20 23:48:29,596 INFO L290 TraceCheckUtils]: 23: Hoare triple {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} is VALID [2022-02-20 23:48:29,596 INFO L290 TraceCheckUtils]: 24: Hoare triple {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} is VALID [2022-02-20 23:48:29,597 INFO L290 TraceCheckUtils]: 25: Hoare triple {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} is VALID [2022-02-20 23:48:29,598 INFO L290 TraceCheckUtils]: 26: Hoare triple {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} is VALID [2022-02-20 23:48:29,598 INFO L290 TraceCheckUtils]: 27: Hoare triple {6748#(and (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) 0) 2))} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:48:29,598 INFO L290 TraceCheckUtils]: 28: Hoare triple {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {6659#false} is VALID [2022-02-20 23:48:29,599 INFO L290 TraceCheckUtils]: 29: Hoare triple {6659#false} assume !false; {6659#false} is VALID [2022-02-20 23:48:29,599 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:48:29,599 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:29,636 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_352 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 2)) is different from false [2022-02-20 23:48:29,665 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_352 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_352) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|) 2)) is different from false [2022-02-20 23:48:29,675 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |c_#memory_int| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_352) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|))) is different from false [2022-02-20 23:48:29,697 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= 2 (select (select (store (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| (store (select |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |c_ULTIMATE.start_main_~t~0#1.base| v_ArrVal_352) |c_ULTIMATE.start_main_~a~0#1.base|) |c_ULTIMATE.start_main_~a~0#1.offset|))) is different from false [2022-02-20 23:48:29,837 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:29,841 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:29,841 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 23 treesize of output 29 [2022-02-20 23:48:29,863 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:29,863 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 30 treesize of output 33 [2022-02-20 23:48:29,869 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 9 treesize of output 7 [2022-02-20 23:48:30,120 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:30,120 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:30,205 INFO L290 TraceCheckUtils]: 29: Hoare triple {6659#false} assume !false; {6659#false} is VALID [2022-02-20 23:48:30,206 INFO L290 TraceCheckUtils]: 28: Hoare triple {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} assume 2 != main_#t~mem14#1;havoc main_#t~mem14#1; {6659#false} is VALID [2022-02-20 23:48:30,207 INFO L290 TraceCheckUtils]: 27: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem14#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L560 {6669#(= 2 |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:48:30,207 INFO L290 TraceCheckUtils]: 26: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} assume !(0 != main_#t~mem12#1);havoc main_#t~mem12#1; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,207 INFO L290 TraceCheckUtils]: 25: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,208 INFO L290 TraceCheckUtils]: 24: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {6667#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6668#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,209 INFO L290 TraceCheckUtils]: 21: Hoare triple {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {6667#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} is VALID [2022-02-20 23:48:30,211 INFO L290 TraceCheckUtils]: 20: Hoare triple {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,211 INFO L290 TraceCheckUtils]: 19: Hoare triple {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,212 INFO L290 TraceCheckUtils]: 18: Hoare triple {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} main_#t~short5#1 := main_~i~0#1 < 20; {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,212 INFO L290 TraceCheckUtils]: 16: Hoare triple {6810#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {6794#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,213 INFO L290 TraceCheckUtils]: 15: Hoare triple {6814#(forall ((v_ArrVal_352 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {6810#(forall ((v_ArrVal_352 (Array Int Int))) (= 2 (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,214 INFO L290 TraceCheckUtils]: 14: Hoare triple {6818#(forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= 2 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {6814#(forall ((v_ArrVal_352 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2))} is VALID [2022-02-20 23:48:30,214 INFO L290 TraceCheckUtils]: 13: Hoare triple {6818#(forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= 2 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {6818#(forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= 2 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,216 INFO L290 TraceCheckUtils]: 12: Hoare triple {6825#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |v_ULTIMATE.start_main_~t~0#1.base_11| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {6818#(forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= 2 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|)))} is VALID [2022-02-20 23:48:30,217 INFO L290 TraceCheckUtils]: 11: Hoare triple {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {6825#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (forall ((v_ArrVal_352 (Array Int Int)) (v_ArrVal_349 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_349)) |v_ULTIMATE.start_main_~t~0#1.base_11| v_ArrVal_352) |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0))))} is VALID [2022-02-20 23:48:30,218 INFO L290 TraceCheckUtils]: 10: Hoare triple {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} is VALID [2022-02-20 23:48:30,218 INFO L290 TraceCheckUtils]: 9: Hoare triple {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} is VALID [2022-02-20 23:48:30,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} havoc main_#t~nondet7#1; {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} is VALID [2022-02-20 23:48:30,220 INFO L290 TraceCheckUtils]: 7: Hoare triple {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {6829#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((|v_ULTIMATE.start_main_~t~0#1.base_11| Int)) (or (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_11| |ULTIMATE.start_main_~a~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_11|) 0)))))} is VALID [2022-02-20 23:48:30,220 INFO L290 TraceCheckUtils]: 6: Hoare triple {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:30,221 INFO L290 TraceCheckUtils]: 5: Hoare triple {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:30,221 INFO L290 TraceCheckUtils]: 4: Hoare triple {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:30,222 INFO L290 TraceCheckUtils]: 3: Hoare triple {6658#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {6842#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:30,222 INFO L290 TraceCheckUtils]: 2: Hoare triple {6658#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {6658#true} is VALID [2022-02-20 23:48:30,222 INFO L290 TraceCheckUtils]: 1: Hoare triple {6658#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {6658#true} is VALID [2022-02-20 23:48:30,222 INFO L290 TraceCheckUtils]: 0: Hoare triple {6658#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {6658#true} is VALID [2022-02-20 23:48:30,222 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2022-02-20 23:48:30,223 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [44922663] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:30,223 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:30,223 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 12] total 29 [2022-02-20 23:48:30,223 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1215740108] [2022-02-20 23:48:30,223 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:30,224 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:30,224 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:30,224 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:30,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 74 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:30,290 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-02-20 23:48:30,290 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:30,290 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-02-20 23:48:30,291 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=127, Invalid=485, Unknown=4, NotChecked=196, Total=812 [2022-02-20 23:48:30,291 INFO L87 Difference]: Start difference. First operand 105 states and 122 transitions. Second operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:31,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:31,915 INFO L93 Difference]: Finished difference Result 215 states and 241 transitions. [2022-02-20 23:48:31,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:48:31,915 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:31,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:31,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:31,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 227 transitions. [2022-02-20 23:48:31,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:31,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 227 transitions. [2022-02-20 23:48:31,918 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 227 transitions. [2022-02-20 23:48:32,088 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:32,091 INFO L225 Difference]: With dead ends: 215 [2022-02-20 23:48:32,091 INFO L226 Difference]: Without dead ends: 215 [2022-02-20 23:48:32,091 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 45 SyntacticMatches, 1 SemanticMatches, 34 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 250 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=239, Invalid=765, Unknown=4, NotChecked=252, Total=1260 [2022-02-20 23:48:32,092 INFO L933 BasicCegarLoop]: 82 mSDtfsCounter, 334 mSDsluCounter, 615 mSDsCounter, 0 mSdLazyCounter, 664 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 334 SdHoareTripleChecker+Valid, 697 SdHoareTripleChecker+Invalid, 1585 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 664 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 868 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:32,092 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [334 Valid, 697 Invalid, 1585 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 664 Invalid, 0 Unknown, 868 Unchecked, 0.5s Time] [2022-02-20 23:48:32,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 215 states. [2022-02-20 23:48:32,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 215 to 123. [2022-02-20 23:48:32,094 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:32,095 INFO L82 GeneralOperation]: Start isEquivalent. First operand 215 states. Second operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:32,095 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:32,095 INFO L87 Difference]: Start difference. First operand 215 states. Second operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:32,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:32,099 INFO L93 Difference]: Finished difference Result 215 states and 241 transitions. [2022-02-20 23:48:32,099 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 241 transitions. [2022-02-20 23:48:32,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:32,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:32,099 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 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 215 states. [2022-02-20 23:48:32,099 INFO L87 Difference]: Start difference. First operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 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 215 states. [2022-02-20 23:48:32,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:32,103 INFO L93 Difference]: Finished difference Result 215 states and 241 transitions. [2022-02-20 23:48:32,103 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 241 transitions. [2022-02-20 23:48:32,103 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:32,103 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:32,103 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:32,103 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:32,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 107 states have (on average 1.3457943925233644) internal successors, (144), 122 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:32,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 144 transitions. [2022-02-20 23:48:32,105 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 144 transitions. Word has length 30 [2022-02-20 23:48:32,105 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:32,106 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 144 transitions. [2022-02-20 23:48:32,106 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 29 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:32,106 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 144 transitions. [2022-02-20 23:48:32,106 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:48:32,106 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:32,106 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:32,132 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:48:32,324 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:32,324 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:32,325 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:32,325 INFO L85 PathProgramCache]: Analyzing trace with hash -1355871724, now seen corresponding path program 1 times [2022-02-20 23:48:32,325 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:32,325 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [160182013] [2022-02-20 23:48:32,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:32,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:32,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:32,621 INFO L290 TraceCheckUtils]: 0: Hoare triple {7647#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {7647#true} is VALID [2022-02-20 23:48:32,621 INFO L290 TraceCheckUtils]: 1: Hoare triple {7647#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {7649#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:32,621 INFO L290 TraceCheckUtils]: 2: Hoare triple {7649#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {7649#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:32,622 INFO L290 TraceCheckUtils]: 3: Hoare triple {7649#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,622 INFO L290 TraceCheckUtils]: 4: Hoare triple {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,623 INFO L290 TraceCheckUtils]: 5: Hoare triple {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,623 INFO L290 TraceCheckUtils]: 6: Hoare triple {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,624 INFO L290 TraceCheckUtils]: 7: Hoare triple {7650#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {7651#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:32,624 INFO L290 TraceCheckUtils]: 8: Hoare triple {7651#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {7651#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:32,625 INFO L290 TraceCheckUtils]: 9: Hoare triple {7651#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {7652#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:32,625 INFO L290 TraceCheckUtils]: 10: Hoare triple {7652#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:32,626 INFO L290 TraceCheckUtils]: 11: Hoare triple {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:32,626 INFO L290 TraceCheckUtils]: 12: Hoare triple {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,627 INFO L290 TraceCheckUtils]: 13: Hoare triple {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,628 INFO L290 TraceCheckUtils]: 14: Hoare triple {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {7655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,628 INFO L290 TraceCheckUtils]: 15: Hoare triple {7655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {7656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:32,629 INFO L290 TraceCheckUtils]: 16: Hoare triple {7656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,629 INFO L290 TraceCheckUtils]: 17: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} main_#t~short5#1 := main_~i~0#1 < 20; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,630 INFO L290 TraceCheckUtils]: 18: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,630 INFO L290 TraceCheckUtils]: 19: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,631 INFO L290 TraceCheckUtils]: 20: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,631 INFO L290 TraceCheckUtils]: 21: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {7658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:32,632 INFO L290 TraceCheckUtils]: 22: Hoare triple {7658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,632 INFO L290 TraceCheckUtils]: 23: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,633 INFO L290 TraceCheckUtils]: 24: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,633 INFO L290 TraceCheckUtils]: 25: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {7660#(and (= |ULTIMATE.start_main_#t~mem12#1| 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:32,633 INFO L290 TraceCheckUtils]: 26: Hoare triple {7660#(and (= |ULTIMATE.start_main_#t~mem12#1| 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {7648#false} is VALID [2022-02-20 23:48:32,633 INFO L290 TraceCheckUtils]: 27: Hoare triple {7648#false} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {7648#false} is VALID [2022-02-20 23:48:32,633 INFO L290 TraceCheckUtils]: 28: Hoare triple {7648#false} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {7648#false} is VALID [2022-02-20 23:48:32,634 INFO L290 TraceCheckUtils]: 29: Hoare triple {7648#false} assume !false; {7648#false} is VALID [2022-02-20 23:48:32,634 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:48:32,634 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:32,634 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [160182013] [2022-02-20 23:48:32,634 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [160182013] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:32,634 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [661439815] [2022-02-20 23:48:32,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:32,634 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:32,635 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:32,639 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:48:32,640 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:48:32,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:32,732 INFO L263 TraceCheckSpWp]: Trace formula consists of 199 conjuncts, 37 conjunts are in the unsatisfiable core [2022-02-20 23:48:32,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:32,746 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:32,835 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 13 treesize of output 9 [2022-02-20 23:48:32,981 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:32,982 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:48:33,027 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:33,029 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:33,089 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:33,095 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:33,097 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:48:33,113 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 16 treesize of output 8 [2022-02-20 23:48:33,190 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:33,231 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:33,288 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 15 treesize of output 7 [2022-02-20 23:48:33,300 INFO L290 TraceCheckUtils]: 0: Hoare triple {7647#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {7647#true} is VALID [2022-02-20 23:48:33,301 INFO L290 TraceCheckUtils]: 1: Hoare triple {7647#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {7667#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:33,301 INFO L290 TraceCheckUtils]: 2: Hoare triple {7667#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {7667#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:33,301 INFO L290 TraceCheckUtils]: 3: Hoare triple {7667#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,302 INFO L290 TraceCheckUtils]: 4: Hoare triple {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,302 INFO L290 TraceCheckUtils]: 5: Hoare triple {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,303 INFO L290 TraceCheckUtils]: 6: Hoare triple {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {7674#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {7687#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {7687#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} havoc main_#t~nondet7#1; {7687#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,304 INFO L290 TraceCheckUtils]: 9: Hoare triple {7687#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {7694#(and (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,305 INFO L290 TraceCheckUtils]: 10: Hoare triple {7694#(and (= |ULTIMATE.start_main_#t~mem8#1| (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4))) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {7698#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,305 INFO L290 TraceCheckUtils]: 11: Hoare triple {7698#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:33,306 INFO L290 TraceCheckUtils]: 12: Hoare triple {7653#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,306 INFO L290 TraceCheckUtils]: 13: Hoare triple {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,307 INFO L290 TraceCheckUtils]: 14: Hoare triple {7654#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {7655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,308 INFO L290 TraceCheckUtils]: 15: Hoare triple {7655#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {7656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:33,308 INFO L290 TraceCheckUtils]: 16: Hoare triple {7656#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,309 INFO L290 TraceCheckUtils]: 17: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} main_#t~short5#1 := main_~i~0#1 < 20; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,320 INFO L290 TraceCheckUtils]: 20: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,321 INFO L290 TraceCheckUtils]: 21: Hoare triple {7657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {7658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} is VALID [2022-02-20 23:48:33,321 INFO L290 TraceCheckUtils]: 22: Hoare triple {7658#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= 0 (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) 4)))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,322 INFO L290 TraceCheckUtils]: 23: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,322 INFO L290 TraceCheckUtils]: 24: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:33,323 INFO L290 TraceCheckUtils]: 25: Hoare triple {7659#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {7744#(= |ULTIMATE.start_main_#t~mem12#1| 0)} is VALID [2022-02-20 23:48:33,323 INFO L290 TraceCheckUtils]: 26: Hoare triple {7744#(= |ULTIMATE.start_main_#t~mem12#1| 0)} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {7648#false} is VALID [2022-02-20 23:48:33,323 INFO L290 TraceCheckUtils]: 27: Hoare triple {7648#false} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {7648#false} is VALID [2022-02-20 23:48:33,323 INFO L290 TraceCheckUtils]: 28: Hoare triple {7648#false} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {7648#false} is VALID [2022-02-20 23:48:33,323 INFO L290 TraceCheckUtils]: 29: Hoare triple {7648#false} assume !false; {7648#false} is VALID [2022-02-20 23:48:33,324 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:48:33,324 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:33,366 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) is different from false [2022-02-20 23:48:33,389 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_430) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) is different from false [2022-02-20 23:48:33,395 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |c_#memory_int| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_430) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) is different from false [2022-02-20 23:48:33,414 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base| (store (select |c_#memory_int| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |c_ULTIMATE.start_main_~t~0#1.base| v_ArrVal_430) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |c_ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) is different from false [2022-02-20 23:48:34,014 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:34,014 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:34,015 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:34,019 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:34,020 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 3 case distinctions, treesize of input 30 treesize of output 41 [2022-02-20 23:48:34,039 INFO L356 Elim1Store]: treesize reduction 8, result has 46.7 percent of original size [2022-02-20 23:48:34,039 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 36 treesize of output 31 [2022-02-20 23:48:34,052 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 11 treesize of output 7 [2022-02-20 23:48:34,067 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:34,067 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:34,162 INFO L290 TraceCheckUtils]: 29: Hoare triple {7648#false} assume !false; {7648#false} is VALID [2022-02-20 23:48:34,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {7648#false} assume 1 != main_#t~mem13#1;havoc main_#t~mem13#1; {7648#false} is VALID [2022-02-20 23:48:34,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {7648#false} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {7648#false} is VALID [2022-02-20 23:48:34,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {7744#(= |ULTIMATE.start_main_#t~mem12#1| 0)} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {7648#false} is VALID [2022-02-20 23:48:34,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {7744#(= |ULTIMATE.start_main_#t~mem12#1| 0)} is VALID [2022-02-20 23:48:34,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:48:34,164 INFO L290 TraceCheckUtils]: 23: Hoare triple {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:48:34,164 INFO L290 TraceCheckUtils]: 22: Hoare triple {7779#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7769#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:48:34,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {7779#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:48:34,169 WARN L290 TraceCheckUtils]: 20: Hoare triple {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} is UNKNOWN [2022-02-20 23:48:34,169 INFO L290 TraceCheckUtils]: 19: Hoare triple {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} is VALID [2022-02-20 23:48:34,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} is VALID [2022-02-20 23:48:34,171 INFO L290 TraceCheckUtils]: 17: Hoare triple {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} main_#t~short5#1 := main_~i~0#1 < 20; {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} is VALID [2022-02-20 23:48:34,171 INFO L290 TraceCheckUtils]: 16: Hoare triple {7799#(forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {7783#(forall ((v_ArrVal_430 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4))))} is VALID [2022-02-20 23:48:34,172 INFO L290 TraceCheckUtils]: 15: Hoare triple {7803#(forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {7799#(forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:34,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {7807#(forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {7803#(forall ((v_ArrVal_430 (Array Int Int))) (= (select (select (store |#memory_int| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:34,174 INFO L290 TraceCheckUtils]: 13: Hoare triple {7807#(forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {7807#(forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:48:34,176 WARN L290 TraceCheckUtils]: 12: Hoare triple {7814#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_12| Int)) (or (forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {7807#(forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |ULTIMATE.start_main_~t~0#1.base| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0))} is UNKNOWN [2022-02-20 23:48:34,178 INFO L290 TraceCheckUtils]: 11: Hoare triple {7818#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {7814#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_12| Int)) (or (forall ((v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0))))} is VALID [2022-02-20 23:48:34,179 INFO L290 TraceCheckUtils]: 10: Hoare triple {7822#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem8#1| 0)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {7818#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} is VALID [2022-02-20 23:48:34,180 INFO L290 TraceCheckUtils]: 9: Hoare triple {7826#(or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {7822#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem8#1| 0)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} is VALID [2022-02-20 23:48:34,180 INFO L290 TraceCheckUtils]: 8: Hoare triple {7826#(or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} havoc main_#t~nondet7#1; {7826#(or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} is VALID [2022-02-20 23:48:34,182 INFO L290 TraceCheckUtils]: 7: Hoare triple {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {7826#(or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 4)) 0)) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_ArrVal_423 Int) (|v_ULTIMATE.start_main_~t~0#1.base_12| Int) (v_ArrVal_430 (Array Int Int)) (v_ArrVal_428 Int)) (or (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~p~0#1.base| (store (store (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset| v_ArrVal_423) (+ |ULTIMATE.start_main_~p~0#1.offset| 8) v_ArrVal_428)) |v_ULTIMATE.start_main_~t~0#1.base_12| v_ArrVal_430) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 4)) 0) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_12|) 0)))))} is VALID [2022-02-20 23:48:34,183 INFO L290 TraceCheckUtils]: 6: Hoare triple {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:34,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:34,184 INFO L290 TraceCheckUtils]: 4: Hoare triple {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:34,184 INFO L290 TraceCheckUtils]: 3: Hoare triple {7647#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {7833#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:34,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {7647#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {7647#true} is VALID [2022-02-20 23:48:34,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {7647#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {7647#true} is VALID [2022-02-20 23:48:34,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {7647#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {7647#true} is VALID [2022-02-20 23:48:34,185 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2022-02-20 23:48:34,186 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [661439815] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:34,186 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:34,186 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 15, 14] total 31 [2022-02-20 23:48:34,186 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1960873163] [2022-02-20 23:48:34,186 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:34,187 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:34,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:34,187 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:34,241 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 65 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:34,241 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:48:34,241 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:34,242 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:48:34,242 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=152, Invalid=559, Unknown=7, NotChecked=212, Total=930 [2022-02-20 23:48:34,242 INFO L87 Difference]: Start difference. First operand 123 states and 144 transitions. Second operand has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:35,591 INFO L93 Difference]: Finished difference Result 204 states and 229 transitions. [2022-02-20 23:48:35,592 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:48:35,592 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 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 30 [2022-02-20 23:48:35,592 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:35,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 215 transitions. [2022-02-20 23:48:35,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 215 transitions. [2022-02-20 23:48:35,595 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 215 transitions. [2022-02-20 23:48:35,780 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:35,783 INFO L225 Difference]: With dead ends: 204 [2022-02-20 23:48:35,783 INFO L226 Difference]: Without dead ends: 204 [2022-02-20 23:48:35,783 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 45 SyntacticMatches, 4 SemanticMatches, 34 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 359 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=251, Invalid=750, Unknown=7, NotChecked=252, Total=1260 [2022-02-20 23:48:35,784 INFO L933 BasicCegarLoop]: 81 mSDtfsCounter, 353 mSDsluCounter, 563 mSDsCounter, 0 mSdLazyCounter, 595 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 353 SdHoareTripleChecker+Valid, 644 SdHoareTripleChecker+Invalid, 1633 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 595 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 973 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:35,784 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [353 Valid, 644 Invalid, 1633 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 595 Invalid, 0 Unknown, 973 Unchecked, 0.4s Time] [2022-02-20 23:48:35,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 204 states. [2022-02-20 23:48:35,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 204 to 123. [2022-02-20 23:48:35,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:35,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 204 states. Second operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,787 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,787 INFO L87 Difference]: Start difference. First operand 204 states. Second operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:35,790 INFO L93 Difference]: Finished difference Result 204 states and 229 transitions. [2022-02-20 23:48:35,790 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 229 transitions. [2022-02-20 23:48:35,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:35,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:35,790 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 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 204 states. [2022-02-20 23:48:35,790 INFO L87 Difference]: Start difference. First operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 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 204 states. [2022-02-20 23:48:35,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:35,795 INFO L93 Difference]: Finished difference Result 204 states and 229 transitions. [2022-02-20 23:48:35,795 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 229 transitions. [2022-02-20 23:48:35,796 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:35,796 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:35,796 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:35,796 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:35,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 107 states have (on average 1.3364485981308412) internal successors, (143), 122 states have internal predecessors, (143), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 143 transitions. [2022-02-20 23:48:35,798 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 143 transitions. Word has length 30 [2022-02-20 23:48:35,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:35,798 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 143 transitions. [2022-02-20 23:48:35,799 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 2.193548387096774) internal successors, (68), 31 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:35,799 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 143 transitions. [2022-02-20 23:48:35,799 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:48:35,799 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:35,799 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:35,826 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:36,023 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:36,024 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:36,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:36,024 INFO L85 PathProgramCache]: Analyzing trace with hash -1074025696, now seen corresponding path program 1 times [2022-02-20 23:48:36,024 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:36,024 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1367376981] [2022-02-20 23:48:36,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:36,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:36,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:36,223 INFO L290 TraceCheckUtils]: 0: Hoare triple {8602#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {8602#true} is VALID [2022-02-20 23:48:36,223 INFO L290 TraceCheckUtils]: 1: Hoare triple {8602#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {8604#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:36,224 INFO L290 TraceCheckUtils]: 2: Hoare triple {8604#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {8604#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:36,224 INFO L290 TraceCheckUtils]: 3: Hoare triple {8604#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,225 INFO L290 TraceCheckUtils]: 4: Hoare triple {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,225 INFO L290 TraceCheckUtils]: 5: Hoare triple {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,225 INFO L290 TraceCheckUtils]: 6: Hoare triple {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,226 INFO L290 TraceCheckUtils]: 7: Hoare triple {8605#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:36,226 INFO L290 TraceCheckUtils]: 8: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:36,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:36,227 INFO L290 TraceCheckUtils]: 10: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:36,228 INFO L290 TraceCheckUtils]: 11: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:36,228 INFO L290 TraceCheckUtils]: 12: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {8607#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {8607#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {8607#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,229 INFO L290 TraceCheckUtils]: 14: Hoare triple {8607#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {8608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,230 INFO L290 TraceCheckUtils]: 15: Hoare triple {8608#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {8609#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:36,230 INFO L290 TraceCheckUtils]: 16: Hoare triple {8609#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:36,231 INFO L290 TraceCheckUtils]: 17: Hoare triple {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:36,231 INFO L290 TraceCheckUtils]: 18: Hoare triple {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:36,235 INFO L290 TraceCheckUtils]: 19: Hoare triple {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:36,236 INFO L290 TraceCheckUtils]: 20: Hoare triple {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:36,237 INFO L290 TraceCheckUtils]: 21: Hoare triple {8610#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {8611#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1))} is VALID [2022-02-20 23:48:36,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {8611#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,238 INFO L290 TraceCheckUtils]: 23: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,240 INFO L290 TraceCheckUtils]: 25: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,240 INFO L290 TraceCheckUtils]: 26: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:36,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {8612#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {8613#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:48:36,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {8613#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {8614#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:36,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {8614#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !(1 == #valid[main_~p~0#1.base]); {8603#false} is VALID [2022-02-20 23:48:36,243 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:36,243 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:36,243 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1367376981] [2022-02-20 23:48:36,243 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1367376981] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:36,243 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1573439825] [2022-02-20 23:48:36,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:36,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:36,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:36,245 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:48:36,247 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:48:36,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:36,333 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:48:36,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:36,346 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:36,529 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:48:36,529 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 21 [2022-02-20 23:48:36,596 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:36,755 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:36,755 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 31 treesize of output 29 [2022-02-20 23:48:36,779 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:36,780 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 29 [2022-02-20 23:48:36,930 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 25 treesize of output 13 [2022-02-20 23:48:37,011 INFO L290 TraceCheckUtils]: 0: Hoare triple {8602#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {8602#true} is VALID [2022-02-20 23:48:37,011 INFO L290 TraceCheckUtils]: 1: Hoare triple {8602#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:37,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:37,012 INFO L290 TraceCheckUtils]: 3: Hoare triple {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,013 INFO L290 TraceCheckUtils]: 4: Hoare triple {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,013 INFO L290 TraceCheckUtils]: 5: Hoare triple {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,013 INFO L290 TraceCheckUtils]: 6: Hoare triple {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {8628#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,014 INFO L290 TraceCheckUtils]: 8: Hoare triple {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} havoc main_#t~nondet7#1; {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,015 INFO L290 TraceCheckUtils]: 9: Hoare triple {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,015 INFO L290 TraceCheckUtils]: 10: Hoare triple {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:37,016 INFO L290 TraceCheckUtils]: 11: Hoare triple {8641#(and (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {8606#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {8657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {8657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {8657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {8657#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {8664#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {8664#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {8668#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)))} is VALID [2022-02-20 23:48:37,019 INFO L290 TraceCheckUtils]: 16: Hoare triple {8668#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,019 INFO L290 TraceCheckUtils]: 17: Hoare triple {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,020 INFO L290 TraceCheckUtils]: 18: Hoare triple {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,020 INFO L290 TraceCheckUtils]: 19: Hoare triple {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,022 INFO L290 TraceCheckUtils]: 21: Hoare triple {8672#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {8688#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {8688#(and (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8)) 1) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,023 INFO L290 TraceCheckUtils]: 23: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,023 INFO L290 TraceCheckUtils]: 24: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,024 INFO L290 TraceCheckUtils]: 25: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,024 INFO L290 TraceCheckUtils]: 26: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,025 INFO L290 TraceCheckUtils]: 27: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:37,026 INFO L290 TraceCheckUtils]: 29: Hoare triple {8692#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8)) 1) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) 8) |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {8714#(and (exists ((|ULTIMATE.start_main_~p~0#1.base| Int)) (and (not (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))) (= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1))} is VALID [2022-02-20 23:48:37,026 INFO L290 TraceCheckUtils]: 30: Hoare triple {8714#(and (exists ((|ULTIMATE.start_main_~p~0#1.base| Int)) (and (not (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))) (= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {8718#(and (exists ((|v_ULTIMATE.start_main_~p~0#1.base_77| Int)) (and (= (select |#valid| |v_ULTIMATE.start_main_~p~0#1.base_77|) 1) (not (= |v_ULTIMATE.start_main_~p~0#1.base_77| |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:37,027 INFO L290 TraceCheckUtils]: 31: Hoare triple {8718#(and (exists ((|v_ULTIMATE.start_main_~p~0#1.base_77| Int)) (and (= (select |#valid| |v_ULTIMATE.start_main_~p~0#1.base_77|) 1) (not (= |v_ULTIMATE.start_main_~p~0#1.base_77| |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(1 == #valid[main_~p~0#1.base]); {8603#false} is VALID [2022-02-20 23:48:37,027 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:37,027 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:37,130 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_503 (Array Int Int))) (= (select |c_#valid| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_503) |c_ULTIMATE.start_main_~a~0#1.base|) (+ 8 |c_ULTIMATE.start_main_~a~0#1.offset|))) 1)) is different from false [2022-02-20 23:48:37,172 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:37,172 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 24 treesize of output 25 [2022-02-20 23:48:37,181 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:37,182 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 40 treesize of output 43 [2022-02-20 23:48:37,185 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:48:38,712 INFO L356 Elim1Store]: treesize reduction 18, result has 63.3 percent of original size [2022-02-20 23:48:38,712 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 45 treesize of output 67 [2022-02-20 23:48:39,070 INFO L290 TraceCheckUtils]: 31: Hoare triple {8614#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !(1 == #valid[main_~p~0#1.base]); {8603#false} is VALID [2022-02-20 23:48:39,071 INFO L290 TraceCheckUtils]: 30: Hoare triple {8613#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {8614#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:48:39,072 INFO L290 TraceCheckUtils]: 29: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {8613#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:48:39,072 INFO L290 TraceCheckUtils]: 28: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,072 INFO L290 TraceCheckUtils]: 27: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,072 INFO L290 TraceCheckUtils]: 26: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {8750#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8728#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,075 INFO L290 TraceCheckUtils]: 21: Hoare triple {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {8750#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1)} is VALID [2022-02-20 23:48:39,077 WARN L290 TraceCheckUtils]: 20: Hoare triple {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is UNKNOWN [2022-02-20 23:48:39,077 INFO L290 TraceCheckUtils]: 19: Hoare triple {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,078 INFO L290 TraceCheckUtils]: 18: Hoare triple {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,078 INFO L290 TraceCheckUtils]: 17: Hoare triple {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,078 INFO L290 TraceCheckUtils]: 16: Hoare triple {8770#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {8754#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,079 INFO L290 TraceCheckUtils]: 15: Hoare triple {8774#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {8770#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,080 INFO L290 TraceCheckUtils]: 14: Hoare triple {8778#(or (forall ((v_arrayElimCell_61 Int)) (= (select |#valid| v_arrayElimCell_61) 1)) (forall ((v_arrayElimCell_60 Int)) (or (and (not (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_60)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (select |#valid| v_arrayElimCell_60) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|))))))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {8774#(forall ((v_ArrVal_503 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_503) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) 1))} is VALID [2022-02-20 23:48:39,081 INFO L290 TraceCheckUtils]: 13: Hoare triple {8778#(or (forall ((v_arrayElimCell_61 Int)) (= (select |#valid| v_arrayElimCell_61) 1)) (forall ((v_arrayElimCell_60 Int)) (or (and (not (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_60)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (select |#valid| v_arrayElimCell_60) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|))))))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {8778#(or (forall ((v_arrayElimCell_61 Int)) (= (select |#valid| v_arrayElimCell_61) 1)) (forall ((v_arrayElimCell_60 Int)) (or (and (not (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_60)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (select |#valid| v_arrayElimCell_60) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|))))))} is VALID [2022-02-20 23:48:39,091 INFO L290 TraceCheckUtils]: 12: Hoare triple {8785#(forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {8778#(or (forall ((v_arrayElimCell_61 Int)) (= (select |#valid| v_arrayElimCell_61) 1)) (forall ((v_arrayElimCell_60 Int)) (or (and (not (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_60)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (and (= (select |#valid| v_arrayElimCell_60) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|))))))} is VALID [2022-02-20 23:48:39,107 INFO L290 TraceCheckUtils]: 11: Hoare triple {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {8785#(forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1))))} is VALID [2022-02-20 23:48:39,111 INFO L290 TraceCheckUtils]: 10: Hoare triple {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} is VALID [2022-02-20 23:48:39,128 INFO L290 TraceCheckUtils]: 9: Hoare triple {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} is VALID [2022-02-20 23:48:39,132 INFO L290 TraceCheckUtils]: 8: Hoare triple {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} havoc main_#t~nondet7#1; {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} is VALID [2022-02-20 23:48:39,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {8789#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (forall ((v_arrayElimCell_61 Int) (v_arrayElimCell_60 Int) (|v_ULTIMATE.start_main_~t~0#1.base_13| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_61) 1) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| v_arrayElimCell_60))) (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_13| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (store |#valid| |v_ULTIMATE.start_main_~t~0#1.base_13| 1) v_arrayElimCell_60) 1)))))} is VALID [2022-02-20 23:48:39,134 INFO L290 TraceCheckUtils]: 6: Hoare triple {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:39,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:39,135 INFO L290 TraceCheckUtils]: 4: Hoare triple {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:39,135 INFO L290 TraceCheckUtils]: 3: Hoare triple {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {8802#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:39,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:39,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {8602#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {8621#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:39,136 INFO L290 TraceCheckUtils]: 0: Hoare triple {8602#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {8602#true} is VALID [2022-02-20 23:48:39,136 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:39,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1573439825] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:39,136 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:39,137 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 32 [2022-02-20 23:48:39,137 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1913446858] [2022-02-20 23:48:39,137 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,137 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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 32 [2022-02-20 23:48:39,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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:48:47,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 85 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:47,540 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-02-20 23:48:47,540 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:47,540 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-02-20 23:48:47,540 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=172, Invalid=814, Unknown=10, NotChecked=60, Total=1056 [2022-02-20 23:48:47,541 INFO L87 Difference]: Start difference. First operand 123 states and 143 transitions. Second operand has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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:48:49,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:49,028 INFO L93 Difference]: Finished difference Result 203 states and 229 transitions. [2022-02-20 23:48:49,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:48:49,028 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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 32 [2022-02-20 23:48:49,029 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:49,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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:48:49,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 213 transitions. [2022-02-20 23:48:49,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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:48:49,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 213 transitions. [2022-02-20 23:48:49,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 213 transitions. [2022-02-20 23:48:49,196 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 213 edges. 213 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:49,199 INFO L225 Difference]: With dead ends: 203 [2022-02-20 23:48:49,199 INFO L226 Difference]: Without dead ends: 203 [2022-02-20 23:48:49,200 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 44 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 543 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=316, Invalid=1238, Unknown=10, NotChecked=76, Total=1640 [2022-02-20 23:48:49,200 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 456 mSDsluCounter, 505 mSDsCounter, 0 mSdLazyCounter, 577 mSolverCounterSat, 79 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 456 SdHoareTripleChecker+Valid, 543 SdHoareTripleChecker+Invalid, 1111 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 79 IncrementalHoareTripleChecker+Valid, 577 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 455 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:49,200 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [456 Valid, 543 Invalid, 1111 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [79 Valid, 577 Invalid, 0 Unknown, 455 Unchecked, 0.5s Time] [2022-02-20 23:48:49,201 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-02-20 23:48:49,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 126. [2022-02-20 23:48:49,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:49,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:49,203 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:49,204 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:49,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:49,207 INFO L93 Difference]: Finished difference Result 203 states and 229 transitions. [2022-02-20 23:48:49,207 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 229 transitions. [2022-02-20 23:48:49,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:49,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:49,208 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 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 203 states. [2022-02-20 23:48:49,208 INFO L87 Difference]: Start difference. First operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 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 203 states. [2022-02-20 23:48:49,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:49,211 INFO L93 Difference]: Finished difference Result 203 states and 229 transitions. [2022-02-20 23:48:49,212 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 229 transitions. [2022-02-20 23:48:49,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:49,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:49,212 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:49,212 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:49,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 110 states have (on average 1.3363636363636364) internal successors, (147), 125 states have internal predecessors, (147), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:49,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 147 transitions. [2022-02-20 23:48:49,214 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 147 transitions. Word has length 32 [2022-02-20 23:48:49,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:49,215 INFO L470 AbstractCegarLoop]: Abstraction has 126 states and 147 transitions. [2022-02-20 23:48:49,215 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 32 states have (on average 2.8125) internal successors, (90), 33 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:48:49,215 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 147 transitions. [2022-02-20 23:48:49,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:48:49,215 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:49,216 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:49,242 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:48:49,439 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,SelfDestructingSolverStorable14 [2022-02-20 23:48:49,440 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:49,440 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:49,440 INFO L85 PathProgramCache]: Analyzing trace with hash -1074025695, now seen corresponding path program 1 times [2022-02-20 23:48:49,440 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:49,440 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [627915694] [2022-02-20 23:48:49,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:49,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:49,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:49,714 INFO L290 TraceCheckUtils]: 0: Hoare triple {9575#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {9575#true} is VALID [2022-02-20 23:48:49,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {9575#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {9577#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:49,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {9577#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {9577#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:49,715 INFO L290 TraceCheckUtils]: 3: Hoare triple {9577#(= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:49,716 INFO L290 TraceCheckUtils]: 4: Hoare triple {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:49,716 INFO L290 TraceCheckUtils]: 5: Hoare triple {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:49,717 INFO L290 TraceCheckUtils]: 6: Hoare triple {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:49,718 INFO L290 TraceCheckUtils]: 7: Hoare triple {9578#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:49,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:49,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:49,720 INFO L290 TraceCheckUtils]: 10: Hoare triple {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:49,720 INFO L290 TraceCheckUtils]: 11: Hoare triple {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:49,721 INFO L290 TraceCheckUtils]: 12: Hoare triple {9579#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {9580#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)))} is VALID [2022-02-20 23:48:49,722 INFO L290 TraceCheckUtils]: 13: Hoare triple {9580#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {9580#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)))} is VALID [2022-02-20 23:48:49,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {9580#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {9581#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,723 INFO L290 TraceCheckUtils]: 15: Hoare triple {9581#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {9582#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,724 INFO L290 TraceCheckUtils]: 16: Hoare triple {9582#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,724 INFO L290 TraceCheckUtils]: 17: Hoare triple {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} main_#t~short5#1 := main_~i~0#1 < 20; {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,725 INFO L290 TraceCheckUtils]: 18: Hoare triple {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,726 INFO L290 TraceCheckUtils]: 20: Hoare triple {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,727 INFO L290 TraceCheckUtils]: 21: Hoare triple {9583#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {9584#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} is VALID [2022-02-20 23:48:49,727 INFO L290 TraceCheckUtils]: 22: Hoare triple {9584#(and (= |ULTIMATE.start_main_~a~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) 8))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) 8) 0))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,728 INFO L290 TraceCheckUtils]: 23: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,728 INFO L290 TraceCheckUtils]: 24: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,729 INFO L290 TraceCheckUtils]: 25: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,729 INFO L290 TraceCheckUtils]: 26: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,729 INFO L290 TraceCheckUtils]: 27: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,730 INFO L290 TraceCheckUtils]: 28: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:49,730 INFO L290 TraceCheckUtils]: 29: Hoare triple {9585#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~p~0#1.offset| 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {9586#(and (<= 12 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0))} is VALID [2022-02-20 23:48:49,731 INFO L290 TraceCheckUtils]: 30: Hoare triple {9586#(and (<= 12 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9587#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:49,731 INFO L290 TraceCheckUtils]: 31: Hoare triple {9587#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(4 + main_~p~0#1.offset <= #length[main_~p~0#1.base] && 0 <= main_~p~0#1.offset); {9576#false} is VALID [2022-02-20 23:48:49,731 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:49,732 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:49,732 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [627915694] [2022-02-20 23:48:49,732 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [627915694] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:49,732 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2081745801] [2022-02-20 23:48:49,732 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:49,732 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:49,732 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:49,733 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:48:49,734 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:48:49,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:49,821 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 42 conjunts are in the unsatisfiable core [2022-02-20 23:48:49,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:49,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:50,011 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 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:48:50,023 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:50,025 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:50,101 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:48:50,110 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 13 treesize of output 9 [2022-02-20 23:48:50,297 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:50,298 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:48:50,308 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:50,309 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:48:50,337 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:50,338 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 46 treesize of output 45 [2022-02-20 23:48:50,344 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 24 [2022-02-20 23:48:51,182 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:51,183 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 13 [2022-02-20 23:48:51,257 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:48:51,258 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-02-20 23:48:51,312 INFO L290 TraceCheckUtils]: 0: Hoare triple {9575#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {9575#true} is VALID [2022-02-20 23:48:51,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {9575#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,313 INFO L290 TraceCheckUtils]: 2: Hoare triple {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:51,313 INFO L290 TraceCheckUtils]: 3: Hoare triple {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,314 INFO L290 TraceCheckUtils]: 4: Hoare triple {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} main_#t~short5#1 := main_~i~0#1 < 20; {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,314 INFO L290 TraceCheckUtils]: 5: Hoare triple {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,315 INFO L290 TraceCheckUtils]: 6: Hoare triple {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,315 INFO L290 TraceCheckUtils]: 7: Hoare triple {9601#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} havoc main_#t~nondet7#1; {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,316 INFO L290 TraceCheckUtils]: 10: Hoare triple {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,318 INFO L290 TraceCheckUtils]: 12: Hoare triple {9614#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {9630#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,318 INFO L290 TraceCheckUtils]: 13: Hoare triple {9630#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {9630#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,319 INFO L290 TraceCheckUtils]: 14: Hoare triple {9630#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~t~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| |ULTIMATE.start_main_~t~0#1.base|)) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {9637#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,320 INFO L290 TraceCheckUtils]: 15: Hoare triple {9637#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {9641#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem10#1.base|) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {9641#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem10#1.base|) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,327 INFO L290 TraceCheckUtils]: 17: Hoare triple {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,330 INFO L290 TraceCheckUtils]: 20: Hoare triple {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,331 INFO L290 TraceCheckUtils]: 21: Hoare triple {9645#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {9661#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:51,332 INFO L290 TraceCheckUtils]: 22: Hoare triple {9661#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) 0) (<= |ULTIMATE.start_main_~a~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9665#(exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:51,333 INFO L290 TraceCheckUtils]: 23: Hoare triple {9665#(exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0)))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,335 INFO L290 TraceCheckUtils]: 24: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,336 INFO L290 TraceCheckUtils]: 25: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,337 INFO L290 TraceCheckUtils]: 26: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,338 INFO L290 TraceCheckUtils]: 27: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,339 INFO L290 TraceCheckUtils]: 28: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} is VALID [2022-02-20 23:48:51,340 INFO L290 TraceCheckUtils]: 29: Hoare triple {9669#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (exists ((|ULTIMATE.start_main_~a~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8)))) (= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~a~0#1.offset| 8))) (<= |ULTIMATE.start_main_~p~0#1.offset| |ULTIMATE.start_main_~a~0#1.offset|) (<= |ULTIMATE.start_main_~a~0#1.offset| 0))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {9586#(and (<= 12 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0))} is VALID [2022-02-20 23:48:51,341 INFO L290 TraceCheckUtils]: 30: Hoare triple {9586#(and (<= 12 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9587#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:51,341 INFO L290 TraceCheckUtils]: 31: Hoare triple {9587#(and (<= 12 (select |#length| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(4 + main_~p~0#1.offset <= #length[main_~p~0#1.base] && 0 <= main_~p~0#1.offset); {9576#false} is VALID [2022-02-20 23:48:51,342 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:51,342 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:52,851 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:52,851 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 68 treesize of output 59 [2022-02-20 23:48:52,868 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:52,869 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 59 treesize of output 59 [2022-02-20 23:48:52,896 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:52,897 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 86 treesize of output 89 [2022-02-20 23:48:52,938 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:52,938 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 143 treesize of output 134 [2022-02-20 23:48:52,988 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 95 treesize of output 87 [2022-02-20 23:48:53,012 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 87 treesize of output 79 [2022-02-20 23:48:53,039 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 79 treesize of output 75 [2022-02-20 23:48:53,847 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:53,847 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:54,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {9694#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= (+ |ULTIMATE.start_main_~p~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~p~0#1.base|)))} assume !(4 + main_~p~0#1.offset <= #length[main_~p~0#1.base] && 0 <= main_~p~0#1.offset); {9576#false} is VALID [2022-02-20 23:48:54,024 INFO L290 TraceCheckUtils]: 30: Hoare triple {9698#(and (<= 0 |ULTIMATE.start_main_#t~mem15#1.offset|) (<= (+ 4 |ULTIMATE.start_main_#t~mem15#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset;main_#t~post16#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9694#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= (+ |ULTIMATE.start_main_~p~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:54,025 INFO L290 TraceCheckUtils]: 29: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L556-3 {9698#(and (<= 0 |ULTIMATE.start_main_#t~mem15#1.offset|) (<= (+ 4 |ULTIMATE.start_main_#t~mem15#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)))} is VALID [2022-02-20 23:48:54,025 INFO L290 TraceCheckUtils]: 28: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume !(1 != main_#t~mem13#1);havoc main_#t~mem13#1; {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,026 INFO L290 TraceCheckUtils]: 27: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem13#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L557 {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,027 INFO L290 TraceCheckUtils]: 26: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume 0 != main_#t~mem12#1;havoc main_#t~mem12#1; {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,027 INFO L290 TraceCheckUtils]: 25: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} SUMMARY for call main_#t~mem12#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L556 {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,028 INFO L290 TraceCheckUtils]: 24: Hoare triple {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} assume !!(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,028 INFO L290 TraceCheckUtils]: 23: Hoare triple {9721#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {9702#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))} is VALID [2022-02-20 23:48:54,030 INFO L290 TraceCheckUtils]: 22: Hoare triple {9725#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|)) (and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9721#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:54,033 INFO L290 TraceCheckUtils]: 21: Hoare triple {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {9725#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|)) (and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))))} is VALID [2022-02-20 23:48:54,043 WARN L290 TraceCheckUtils]: 20: Hoare triple {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is UNKNOWN [2022-02-20 23:48:54,044 INFO L290 TraceCheckUtils]: 19: Hoare triple {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,045 INFO L290 TraceCheckUtils]: 18: Hoare triple {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,047 INFO L290 TraceCheckUtils]: 17: Hoare triple {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} main_#t~short5#1 := main_~i~0#1 < 20; {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,048 INFO L290 TraceCheckUtils]: 16: Hoare triple {9745#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))) (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9729#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,050 INFO L290 TraceCheckUtils]: 15: Hoare triple {9749#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {9745#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))) (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,051 INFO L290 TraceCheckUtils]: 14: Hoare triple {9753#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (< |ULTIMATE.start_main_~a~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~t~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~t~0#1.base|))) (or (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= 0 |ULTIMATE.start_main_~t~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {9749#(forall ((|v_ULTIMATE.start_main_~p~0#1.offset_65| Int)) (or (not (<= |v_ULTIMATE.start_main_~p~0#1.offset_65| |ULTIMATE.start_main_~a~0#1.offset|)) (and (forall ((v_ArrVal_579 (Array Int Int)) (v_ArrVal_580 (Array Int Int))) (<= (+ (select (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8)) 4) (select |#length| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_579) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (forall ((v_ArrVal_580 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_580) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_65| 8))))) (not (<= 0 |v_ULTIMATE.start_main_~p~0#1.offset_65|))))} is VALID [2022-02-20 23:48:54,052 INFO L290 TraceCheckUtils]: 13: Hoare triple {9753#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (< |ULTIMATE.start_main_~a~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~t~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~t~0#1.base|))) (or (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= 0 |ULTIMATE.start_main_~t~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {9753#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (< |ULTIMATE.start_main_~a~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~t~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~t~0#1.base|))) (or (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= 0 |ULTIMATE.start_main_~t~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,053 INFO L290 TraceCheckUtils]: 12: Hoare triple {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {9753#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (< |ULTIMATE.start_main_~a~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~t~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~t~0#1.base|))) (or (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~t~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= 0 |ULTIMATE.start_main_~t~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,055 INFO L290 TraceCheckUtils]: 11: Hoare triple {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} is VALID [2022-02-20 23:48:54,056 INFO L290 TraceCheckUtils]: 10: Hoare triple {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} is VALID [2022-02-20 23:48:54,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} is VALID [2022-02-20 23:48:54,058 INFO L290 TraceCheckUtils]: 8: Hoare triple {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} havoc main_#t~nondet7#1; {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} is VALID [2022-02-20 23:48:54,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {9760#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_15| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_15|) 0)) (and (or (not (= |v_ULTIMATE.start_main_~t~0#1.base_15| |ULTIMATE.start_main_~a~0#1.base|)) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))))} is VALID [2022-02-20 23:48:54,060 INFO L290 TraceCheckUtils]: 6: Hoare triple {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,060 INFO L290 TraceCheckUtils]: 5: Hoare triple {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,061 INFO L290 TraceCheckUtils]: 4: Hoare triple {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} main_#t~short5#1 := main_~i~0#1 < 20; {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,062 INFO L290 TraceCheckUtils]: 3: Hoare triple {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {9776#(and (or (<= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (< |ULTIMATE.start_main_~a~0#1.offset| 0)) (or (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (< |ULTIMATE.start_main_~a~0#1.offset| 0)))} is VALID [2022-02-20 23:48:54,062 INFO L290 TraceCheckUtils]: 2: Hoare triple {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:54,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {9575#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {9594#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:54,063 INFO L290 TraceCheckUtils]: 0: Hoare triple {9575#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {9575#true} is VALID [2022-02-20 23:48:54,063 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:54,063 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2081745801] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:54,063 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:54,063 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 33 [2022-02-20 23:48:54,064 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [729711228] [2022-02-20 23:48:54,064 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:54,064 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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 32 [2022-02-20 23:48:54,064 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:54,065 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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:48:54,156 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 89 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:54,157 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-02-20 23:48:54,157 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:54,157 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-02-20 23:48:54,157 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=154, Invalid=949, Unknown=19, NotChecked=0, Total=1122 [2022-02-20 23:48:54,157 INFO L87 Difference]: Start difference. First operand 126 states and 147 transitions. Second operand has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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:48:55,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:55,915 INFO L93 Difference]: Finished difference Result 166 states and 193 transitions. [2022-02-20 23:48:55,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:48:55,915 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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 32 [2022-02-20 23:48:55,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:55,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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:48:55,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 161 transitions. [2022-02-20 23:48:55,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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:48:55,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 161 transitions. [2022-02-20 23:48:55,918 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 161 transitions. [2022-02-20 23:48:56,079 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:48:56,081 INFO L225 Difference]: With dead ends: 166 [2022-02-20 23:48:56,081 INFO L226 Difference]: Without dead ends: 166 [2022-02-20 23:48:56,082 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 539 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=382, Invalid=1579, Unknown=19, NotChecked=0, Total=1980 [2022-02-20 23:48:56,082 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 254 mSDsluCounter, 581 mSDsCounter, 0 mSdLazyCounter, 566 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 254 SdHoareTripleChecker+Valid, 630 SdHoareTripleChecker+Invalid, 912 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 566 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 296 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:56,082 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [254 Valid, 630 Invalid, 912 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 566 Invalid, 0 Unknown, 296 Unchecked, 0.5s Time] [2022-02-20 23:48:56,083 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2022-02-20 23:48:56,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 124. [2022-02-20 23:48:56,084 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:56,085 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,085 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,085 INFO L87 Difference]: Start difference. First operand 166 states. Second operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:56,089 INFO L93 Difference]: Finished difference Result 166 states and 193 transitions. [2022-02-20 23:48:56,090 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 193 transitions. [2022-02-20 23:48:56,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:56,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:56,090 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 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 166 states. [2022-02-20 23:48:56,091 INFO L87 Difference]: Start difference. First operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 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 166 states. [2022-02-20 23:48:56,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:56,093 INFO L93 Difference]: Finished difference Result 166 states and 193 transitions. [2022-02-20 23:48:56,093 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 193 transitions. [2022-02-20 23:48:56,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:56,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:56,094 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:56,094 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:56,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 111 states have (on average 1.3063063063063063) internal successors, (145), 123 states have internal predecessors, (145), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 145 transitions. [2022-02-20 23:48:56,096 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 145 transitions. Word has length 32 [2022-02-20 23:48:56,096 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:56,096 INFO L470 AbstractCegarLoop]: Abstraction has 124 states and 145 transitions. [2022-02-20 23:48:56,096 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 34 states, 33 states have (on average 2.727272727272727) internal successors, (90), 34 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:48:56,097 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 145 transitions. [2022-02-20 23:48:56,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:48:56,098 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:56,098 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:56,124 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:56,311 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-02-20 23:48:56,312 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr39ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:48:56,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:56,312 INFO L85 PathProgramCache]: Analyzing trace with hash 1553010291, now seen corresponding path program 1 times [2022-02-20 23:48:56,312 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:56,312 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [669200296] [2022-02-20 23:48:56,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:56,312 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:56,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:56,458 INFO L290 TraceCheckUtils]: 0: Hoare triple {10446#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {10446#true} is VALID [2022-02-20 23:48:56,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {10446#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {10446#true} is VALID [2022-02-20 23:48:56,458 INFO L290 TraceCheckUtils]: 2: Hoare triple {10446#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {10446#true} is VALID [2022-02-20 23:48:56,459 INFO L290 TraceCheckUtils]: 3: Hoare triple {10446#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,459 INFO L290 TraceCheckUtils]: 4: Hoare triple {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,460 INFO L290 TraceCheckUtils]: 6: Hoare triple {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,461 INFO L290 TraceCheckUtils]: 7: Hoare triple {10448#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:56,461 INFO L290 TraceCheckUtils]: 8: Hoare triple {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:56,461 INFO L290 TraceCheckUtils]: 9: Hoare triple {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:56,462 INFO L290 TraceCheckUtils]: 10: Hoare triple {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:56,462 INFO L290 TraceCheckUtils]: 11: Hoare triple {10449#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {10450#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:56,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {10450#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {10451#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {10451#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {10451#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,464 INFO L290 TraceCheckUtils]: 14: Hoare triple {10451#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {10452#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:56,465 INFO L290 TraceCheckUtils]: 15: Hoare triple {10452#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {10453#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:48:56,465 INFO L290 TraceCheckUtils]: 16: Hoare triple {10453#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:56,465 INFO L290 TraceCheckUtils]: 17: Hoare triple {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:56,466 INFO L290 TraceCheckUtils]: 18: Hoare triple {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:56,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:56,467 INFO L290 TraceCheckUtils]: 20: Hoare triple {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} is VALID [2022-02-20 23:48:56,468 INFO L290 TraceCheckUtils]: 21: Hoare triple {10454#(and (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {10455#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} is VALID [2022-02-20 23:48:56,468 INFO L290 TraceCheckUtils]: 22: Hoare triple {10455#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 1)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10456#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} is VALID [2022-02-20 23:48:56,468 INFO L290 TraceCheckUtils]: 23: Hoare triple {10456#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 1)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {10457#(= |ULTIMATE.start_main_#t~mem11#1| 1)} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {10457#(= |ULTIMATE.start_main_#t~mem11#1| 1)} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {10447#false} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {10447#false} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 27: Hoare triple {10447#false} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 28: Hoare triple {10447#false} assume !(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 29: Hoare triple {10447#false} assume 0 == main_~p~0#1.offset; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 30: Hoare triple {10447#false} assume main_~p~0#1.base < #StackHeapBarrier; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 31: Hoare triple {10447#false} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_#res#1 := 0; {10447#false} is VALID [2022-02-20 23:48:56,469 INFO L290 TraceCheckUtils]: 32: Hoare triple {10447#false} assume !(#valid == main_old_#valid#1); {10447#false} is VALID [2022-02-20 23:48:56,470 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:48:56,470 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:56,470 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [669200296] [2022-02-20 23:48:56,470 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [669200296] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:56,470 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1574652337] [2022-02-20 23:48:56,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:56,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:56,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:56,471 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:48:56,472 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:48:56,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:56,560 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 28 conjunts are in the unsatisfiable core [2022-02-20 23:48:56,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:56,574 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:56,731 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:56,732 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:48:56,811 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:48:57,310 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:57,311 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 36 treesize of output 34 [2022-02-20 23:48:57,428 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:48:57,428 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 34 [2022-02-20 23:48:57,917 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:57,917 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 30 treesize of output 24 [2022-02-20 23:48:58,061 INFO L290 TraceCheckUtils]: 0: Hoare triple {10446#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {10446#true} is VALID [2022-02-20 23:48:58,062 INFO L290 TraceCheckUtils]: 1: Hoare triple {10446#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:58,062 INFO L290 TraceCheckUtils]: 2: Hoare triple {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:58,062 INFO L290 TraceCheckUtils]: 3: Hoare triple {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,063 INFO L290 TraceCheckUtils]: 4: Hoare triple {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,063 INFO L290 TraceCheckUtils]: 6: Hoare triple {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,064 INFO L290 TraceCheckUtils]: 7: Hoare triple {10471#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:58,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:58,065 INFO L290 TraceCheckUtils]: 9: Hoare triple {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:58,065 INFO L290 TraceCheckUtils]: 10: Hoare triple {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:58,066 INFO L290 TraceCheckUtils]: 11: Hoare triple {10484#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {10497#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:48:58,066 INFO L290 TraceCheckUtils]: 12: Hoare triple {10497#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,067 INFO L290 TraceCheckUtils]: 13: Hoare triple {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:58,068 INFO L290 TraceCheckUtils]: 14: Hoare triple {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {10508#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)))} is VALID [2022-02-20 23:48:58,068 INFO L290 TraceCheckUtils]: 15: Hoare triple {10508#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {10512#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,069 INFO L290 TraceCheckUtils]: 16: Hoare triple {10512#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,070 INFO L290 TraceCheckUtils]: 17: Hoare triple {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} main_#t~short5#1 := main_~i~0#1 < 20; {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,071 INFO L290 TraceCheckUtils]: 19: Hoare triple {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {10516#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,075 INFO L290 TraceCheckUtils]: 24: Hoare triple {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,076 INFO L290 TraceCheckUtils]: 25: Hoare triple {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:58,076 INFO L290 TraceCheckUtils]: 26: Hoare triple {10532#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {10548#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} is VALID [2022-02-20 23:48:58,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {10548#(exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {10552#(or (not (= |ULTIMATE.start_main_#t~mem18#1.base| 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:58,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {10552#(or (not (= |ULTIMATE.start_main_#t~mem18#1.base| 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {10556#(or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:58,078 INFO L290 TraceCheckUtils]: 29: Hoare triple {10556#(or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} assume 0 == main_~p~0#1.offset; {10447#false} is VALID [2022-02-20 23:48:58,078 INFO L290 TraceCheckUtils]: 30: Hoare triple {10447#false} assume main_~p~0#1.base < #StackHeapBarrier; {10447#false} is VALID [2022-02-20 23:48:58,078 INFO L290 TraceCheckUtils]: 31: Hoare triple {10447#false} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_#res#1 := 0; {10447#false} is VALID [2022-02-20 23:48:58,078 INFO L290 TraceCheckUtils]: 32: Hoare triple {10447#false} assume !(#valid == main_old_#valid#1); {10447#false} is VALID [2022-02-20 23:48:58,078 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:48:58,079 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:58,606 WARN L838 $PredicateComparison]: unable to prove that (forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (not (= (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))) is different from false [2022-02-20 23:48:58,911 WARN L838 $PredicateComparison]: unable to prove that (forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (not (= (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_654) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))) is different from false [2022-02-20 23:48:58,979 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_654 (Array Int Int)) (|v_ULTIMATE.start_main_~p~0#1.offset_76| Int)) (or (not (= (select (select (store |c_#memory_$Pointer$.base| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_654) |c_ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_76| 8)) 0)) (< |v_ULTIMATE.start_main_~p~0#1.offset_76| 0) (< 0 |v_ULTIMATE.start_main_~p~0#1.offset_76|))) is different from false [2022-02-20 23:48:59,036 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:59,036 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:48:59,054 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:48:59,054 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 39 treesize of output 42 [2022-02-20 23:48:59,073 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 22 treesize of output 18 [2022-02-20 23:48:59,600 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:48:59,600 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 13 treesize of output 12 [2022-02-20 23:48:59,683 INFO L290 TraceCheckUtils]: 32: Hoare triple {10447#false} assume !(#valid == main_old_#valid#1); {10447#false} is VALID [2022-02-20 23:48:59,684 INFO L290 TraceCheckUtils]: 31: Hoare triple {10447#false} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_#res#1 := 0; {10447#false} is VALID [2022-02-20 23:48:59,684 INFO L290 TraceCheckUtils]: 30: Hoare triple {10447#false} assume main_~p~0#1.base < #StackHeapBarrier; {10447#false} is VALID [2022-02-20 23:48:59,684 INFO L290 TraceCheckUtils]: 29: Hoare triple {10556#(or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} assume 0 == main_~p~0#1.offset; {10447#false} is VALID [2022-02-20 23:48:59,684 INFO L290 TraceCheckUtils]: 28: Hoare triple {10552#(or (not (= |ULTIMATE.start_main_#t~mem18#1.base| 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} assume !(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {10556#(or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:59,685 INFO L290 TraceCheckUtils]: 27: Hoare triple {10584#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {10552#(or (not (= |ULTIMATE.start_main_#t~mem18#1.base| 0)) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0))} is VALID [2022-02-20 23:48:59,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {10584#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} is VALID [2022-02-20 23:48:59,686 INFO L290 TraceCheckUtils]: 25: Hoare triple {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:59,687 INFO L290 TraceCheckUtils]: 24: Hoare triple {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:59,687 INFO L290 TraceCheckUtils]: 23: Hoare triple {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:59,688 INFO L290 TraceCheckUtils]: 22: Hoare triple {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:59,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {10588#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))))} is VALID [2022-02-20 23:48:59,691 WARN L290 TraceCheckUtils]: 20: Hoare triple {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} is UNKNOWN [2022-02-20 23:48:59,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} is VALID [2022-02-20 23:48:59,692 INFO L290 TraceCheckUtils]: 18: Hoare triple {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} is VALID [2022-02-20 23:48:59,692 INFO L290 TraceCheckUtils]: 17: Hoare triple {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} main_#t~short5#1 := main_~i~0#1 < 20; {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} is VALID [2022-02-20 23:48:59,693 INFO L290 TraceCheckUtils]: 16: Hoare triple {10620#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {10604#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0)) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))} is VALID [2022-02-20 23:48:59,693 INFO L290 TraceCheckUtils]: 15: Hoare triple {10624#(forall ((v_ArrVal_654 (Array Int Int)) (|v_ULTIMATE.start_main_~p~0#1.offset_76| Int)) (or (< |v_ULTIMATE.start_main_~p~0#1.offset_76| 0) (< 0 |v_ULTIMATE.start_main_~p~0#1.offset_76|) (not (= (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_76| 8)) 0))))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {10620#(forall ((|ULTIMATE.start_main_~p~0#1.offset| Int) (v_ArrVal_654 (Array Int Int))) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) 0))))} is VALID [2022-02-20 23:48:59,694 INFO L290 TraceCheckUtils]: 14: Hoare triple {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {10624#(forall ((v_ArrVal_654 (Array Int Int)) (|v_ULTIMATE.start_main_~p~0#1.offset_76| Int)) (or (< |v_ULTIMATE.start_main_~p~0#1.offset_76| 0) (< 0 |v_ULTIMATE.start_main_~p~0#1.offset_76|) (not (= (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_654) |ULTIMATE.start_main_~a~0#1.base|) (+ |v_ULTIMATE.start_main_~p~0#1.offset_76| 8)) 0))))} is VALID [2022-02-20 23:48:59,695 INFO L290 TraceCheckUtils]: 13: Hoare triple {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:59,695 INFO L290 TraceCheckUtils]: 12: Hoare triple {10634#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {10501#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| 0)) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:48:59,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} SUMMARY for call write~int(1, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L542 {10634#(forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))))} is VALID [2022-02-20 23:48:59,697 INFO L290 TraceCheckUtils]: 10: Hoare triple {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} assume 0 != main_#t~mem8#1;havoc main_#t~mem8#1; {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} is VALID [2022-02-20 23:48:59,698 INFO L290 TraceCheckUtils]: 9: Hoare triple {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} is VALID [2022-02-20 23:48:59,698 INFO L290 TraceCheckUtils]: 8: Hoare triple {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} havoc main_#t~nondet7#1; {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} is VALID [2022-02-20 23:48:59,699 INFO L290 TraceCheckUtils]: 7: Hoare triple {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {10638#(or (forall ((|v_ULTIMATE.start_main_~t~0#1.base_17| Int)) (or (and (not (= |v_ULTIMATE.start_main_~t~0#1.base_17| |ULTIMATE.start_main_~p~0#1.base|)) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~t~0#1.base_17|) 0)) (= |v_ULTIMATE.start_main_~t~0#1.base_17| 0))) (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)))} is VALID [2022-02-20 23:48:59,703 INFO L290 TraceCheckUtils]: 6: Hoare triple {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:59,704 INFO L290 TraceCheckUtils]: 5: Hoare triple {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:59,704 INFO L290 TraceCheckUtils]: 4: Hoare triple {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:59,705 INFO L290 TraceCheckUtils]: 3: Hoare triple {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {10651#(or (not (<= 0 |ULTIMATE.start_main_~p~0#1.offset|)) (and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:48:59,705 INFO L290 TraceCheckUtils]: 2: Hoare triple {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:59,706 INFO L290 TraceCheckUtils]: 1: Hoare triple {10446#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {10464#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:48:59,706 INFO L290 TraceCheckUtils]: 0: Hoare triple {10446#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {10446#true} is VALID [2022-02-20 23:48:59,706 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2022-02-20 23:48:59,706 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1574652337] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:59,706 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:59,706 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 14, 14] total 32 [2022-02-20 23:48:59,706 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1566541636] [2022-02-20 23:48:59,706 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:59,707 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 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 33 [2022-02-20 23:48:59,707 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:59,707 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:59,787 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:48:59,788 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-02-20 23:48:59,788 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:59,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-02-20 23:48:59,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=99, Invalid=722, Unknown=3, NotChecked=168, Total=992 [2022-02-20 23:48:59,789 INFO L87 Difference]: Start difference. First operand 124 states and 145 transitions. Second operand has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call 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:01,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,168 INFO L93 Difference]: Finished difference Result 139 states and 160 transitions. [2022-02-20 23:49:01,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-02-20 23:49:01,169 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 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 33 [2022-02-20 23:49:01,169 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:01,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call 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:01,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2022-02-20 23:49:01,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call 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:01,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2022-02-20 23:49:01,172 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 125 transitions. [2022-02-20 23:49:01,287 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:49:01,289 INFO L225 Difference]: With dead ends: 139 [2022-02-20 23:49:01,289 INFO L226 Difference]: Without dead ends: 138 [2022-02-20 23:49:01,289 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 47 SyntacticMatches, 3 SemanticMatches, 45 ConstructedPredicates, 3 IntricatePredicates, 1 DeprecatedPredicates, 376 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=321, Invalid=1580, Unknown=3, NotChecked=258, Total=2162 [2022-02-20 23:49:01,290 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 92 mSDsluCounter, 672 mSDsCounter, 0 mSdLazyCounter, 409 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 92 SdHoareTripleChecker+Valid, 721 SdHoareTripleChecker+Invalid, 734 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 409 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 300 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:01,290 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [92 Valid, 721 Invalid, 734 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 409 Invalid, 0 Unknown, 300 Unchecked, 0.3s Time] [2022-02-20 23:49:01,290 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2022-02-20 23:49:01,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 128. [2022-02-20 23:49:01,292 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:01,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 0 states have call 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:01,292 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 0 states have call 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:01,293 INFO L87 Difference]: Start difference. First operand 138 states. Second operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 0 states have call 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:01,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,294 INFO L93 Difference]: Finished difference Result 138 states and 159 transitions. [2022-02-20 23:49:01,294 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 159 transitions. [2022-02-20 23:49:01,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,296 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 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 138 states. [2022-02-20 23:49:01,297 INFO L87 Difference]: Start difference. First operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 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 138 states. [2022-02-20 23:49:01,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,299 INFO L93 Difference]: Finished difference Result 138 states and 159 transitions. [2022-02-20 23:49:01,299 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 159 transitions. [2022-02-20 23:49:01,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,299 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:01,299 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:01,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 115 states have (on average 1.2869565217391303) internal successors, (148), 127 states have internal predecessors, (148), 0 states have call successors, (0), 0 states have call 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:01,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 148 transitions. [2022-02-20 23:49:01,301 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 148 transitions. Word has length 33 [2022-02-20 23:49:01,301 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:01,302 INFO L470 AbstractCegarLoop]: Abstraction has 128 states and 148 transitions. [2022-02-20 23:49:01,302 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 2.6875) internal successors, (86), 32 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call 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:01,302 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 148 transitions. [2022-02-20 23:49:01,302 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:49:01,302 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:01,303 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:01,331 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:01,526 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:01,527 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 36 more)] === [2022-02-20 23:49:01,527 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:01,527 INFO L85 PathProgramCache]: Analyzing trace with hash 1319887619, now seen corresponding path program 1 times [2022-02-20 23:49:01,527 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:01,527 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [412583352] [2022-02-20 23:49:01,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:01,528 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:01,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,699 INFO L290 TraceCheckUtils]: 0: Hoare triple {11248#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {11248#true} is VALID [2022-02-20 23:49:01,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {11248#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {11248#true} is VALID [2022-02-20 23:49:01,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {11248#true} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {11248#true} is VALID [2022-02-20 23:49:01,700 INFO L290 TraceCheckUtils]: 3: Hoare triple {11248#true} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,700 INFO L290 TraceCheckUtils]: 4: Hoare triple {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,701 INFO L290 TraceCheckUtils]: 5: Hoare triple {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,701 INFO L290 TraceCheckUtils]: 6: Hoare triple {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,702 INFO L290 TraceCheckUtils]: 7: Hoare triple {11250#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:01,702 INFO L290 TraceCheckUtils]: 8: Hoare triple {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:01,703 INFO L290 TraceCheckUtils]: 9: Hoare triple {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:01,704 INFO L290 TraceCheckUtils]: 10: Hoare triple {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:01,704 INFO L290 TraceCheckUtils]: 11: Hoare triple {11251#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {11252#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:01,705 INFO L290 TraceCheckUtils]: 12: Hoare triple {11252#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {11253#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,706 INFO L290 TraceCheckUtils]: 13: Hoare triple {11253#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {11253#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,707 INFO L290 TraceCheckUtils]: 14: Hoare triple {11253#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {11254#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:01,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {11254#(and (= |ULTIMATE.start_main_~a~0#1.offset| |ULTIMATE.start_main_~p~0#1.offset|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {11255#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} is VALID [2022-02-20 23:49:01,709 INFO L290 TraceCheckUtils]: 16: Hoare triple {11255#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~a~0#1.base|)))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:49:01,710 INFO L290 TraceCheckUtils]: 17: Hoare triple {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} main_#t~short5#1 := main_~i~0#1 < 20; {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:49:01,710 INFO L290 TraceCheckUtils]: 18: Hoare triple {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:49:01,711 INFO L290 TraceCheckUtils]: 19: Hoare triple {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:49:01,712 INFO L290 TraceCheckUtils]: 20: Hoare triple {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} is VALID [2022-02-20 23:49:01,713 INFO L290 TraceCheckUtils]: 21: Hoare triple {11256#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2) (not (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {11257#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} is VALID [2022-02-20 23:49:01,713 INFO L290 TraceCheckUtils]: 22: Hoare triple {11257#(= (select (select |#memory_int| |ULTIMATE.start_main_~a~0#1.base|) |ULTIMATE.start_main_~a~0#1.offset|) 2)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {11258#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} is VALID [2022-02-20 23:49:01,714 INFO L290 TraceCheckUtils]: 23: Hoare triple {11258#(= (select (select |#memory_int| |ULTIMATE.start_main_~p~0#1.base|) |ULTIMATE.start_main_~p~0#1.offset|) 2)} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {11259#(= 2 |ULTIMATE.start_main_#t~mem11#1|)} is VALID [2022-02-20 23:49:01,714 INFO L290 TraceCheckUtils]: 24: Hoare triple {11259#(= 2 |ULTIMATE.start_main_#t~mem11#1|)} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {11249#false} is VALID [2022-02-20 23:49:01,714 INFO L290 TraceCheckUtils]: 25: Hoare triple {11249#false} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 26: Hoare triple {11249#false} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 27: Hoare triple {11249#false} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 28: Hoare triple {11249#false} assume !!(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 29: Hoare triple {11249#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L570 {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 30: Hoare triple {11249#false} main_~t~0#1.base, main_~t~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 31: Hoare triple {11249#false} assume 0 == main_~p~0#1.offset; {11249#false} is VALID [2022-02-20 23:49:01,715 INFO L290 TraceCheckUtils]: 32: Hoare triple {11249#false} assume main_~p~0#1.base < #StackHeapBarrier; {11249#false} is VALID [2022-02-20 23:49:01,716 INFO L290 TraceCheckUtils]: 33: Hoare triple {11249#false} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_~p~0#1.base, main_~p~0#1.offset := main_~t~0#1.base, main_~t~0#1.offset; {11249#false} is VALID [2022-02-20 23:49:01,716 INFO L290 TraceCheckUtils]: 34: Hoare triple {11249#false} assume !(1 == #valid[main_~p~0#1.base]); {11249#false} is VALID [2022-02-20 23:49:01,716 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:49:01,717 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:01,717 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [412583352] [2022-02-20 23:49:01,717 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [412583352] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:01,717 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [881253626] [2022-02-20 23:49:01,717 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:01,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:01,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:01,719 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:01,749 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:01,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,824 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 36 conjunts are in the unsatisfiable core [2022-02-20 23:49:01,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,836 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:01,989 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:49:01,990 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 21 [2022-02-20 23:49:02,063 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 13 treesize of output 9 [2022-02-20 23:49:02,567 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:49:02,567 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:49:02,687 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:49:02,688 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 34 treesize of output 35 [2022-02-20 23:49:03,370 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:49:03,371 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 31 treesize of output 25 [2022-02-20 23:49:03,733 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 17 [2022-02-20 23:49:03,754 INFO L290 TraceCheckUtils]: 0: Hoare triple {11248#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2); {11248#true} is VALID [2022-02-20 23:49:03,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {11248#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~post6#1, main_#t~nondet7#1, main_#t~mem8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~nondet4#1, main_#t~short5#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~post16#1, main_#t~mem11#1, main_#t~mem17#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem18#1.base, main_#t~mem18#1.offset, main_~p~0#1.base, main_~p~0#1.offset, main_~a~0#1.base, main_~a~0#1.offset, main_~t~0#1.base, main_~t~0#1.offset, main_~i~0#1;havoc main_~p~0#1.base, main_~p~0#1.offset;havoc main_~a~0#1.base, main_~a~0#1.offset;havoc main_~t~0#1.base, main_~t~0#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnHeap(12);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~malloc3#1.base, main_#t~malloc3#1.offset; {11266#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {11266#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} assume !(main_~a~0#1.base == 0 && main_~a~0#1.offset == 0); {11266#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,755 INFO L290 TraceCheckUtils]: 3: Hoare triple {11266#(<= |ULTIMATE.start_main_~a~0#1.offset| 0)} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:03,756 INFO L290 TraceCheckUtils]: 4: Hoare triple {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} main_#t~short5#1 := main_~i~0#1 < 20; {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:03,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:03,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} assume !!main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1;main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} is VALID [2022-02-20 23:49:03,757 INFO L290 TraceCheckUtils]: 7: Hoare triple {11273#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L540 {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,757 INFO L290 TraceCheckUtils]: 8: Hoare triple {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} havoc main_#t~nondet7#1; {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1 := read~int(main_~p~0#1.base, 4 + main_~p~0#1.offset, 4); srcloc: L541 {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,758 INFO L290 TraceCheckUtils]: 10: Hoare triple {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(0 != main_#t~mem8#1);havoc main_#t~mem8#1; {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {11286#(and (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~int(2, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L544 {11299#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {11299#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnHeap(12);main_~t~0#1.base, main_~t~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {11303#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,760 INFO L290 TraceCheckUtils]: 13: Hoare triple {11303#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !(main_~t~0#1.base == 0 && main_~t~0#1.offset == 0); {11303#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {11303#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~t~0#1.base, main_~t~0#1.offset, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L547-3 {11310#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,761 INFO L290 TraceCheckUtils]: 15: Hoare triple {11310#(and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)) (= |ULTIMATE.start_main_~a~0#1.base| |ULTIMATE.start_main_~p~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L548 {11314#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,762 INFO L290 TraceCheckUtils]: 16: Hoare triple {11314#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} main_~p~0#1.base, main_~p~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} main_#t~short5#1 := main_~i~0#1 < 20; {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,764 INFO L290 TraceCheckUtils]: 18: Hoare triple {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} assume main_#t~short5#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_#t~short5#1 := 0 != main_#t~nondet4#1; {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,764 INFO L290 TraceCheckUtils]: 19: Hoare triple {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} assume !main_#t~short5#1;havoc main_#t~nondet4#1;havoc main_#t~short5#1; {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,765 INFO L290 TraceCheckUtils]: 20: Hoare triple {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} SUMMARY for call write~int(3, main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L538-6 {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,766 INFO L290 TraceCheckUtils]: 21: Hoare triple {11318#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~p~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))) (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L551 {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} is VALID [2022-02-20 23:49:03,767 INFO L290 TraceCheckUtils]: 22: Hoare triple {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset;main_~i~0#1 := 0; {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} is VALID [2022-02-20 23:49:03,768 INFO L290 TraceCheckUtils]: 23: Hoare triple {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} SUMMARY for call main_#t~mem11#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-3 {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} is VALID [2022-02-20 23:49:03,768 INFO L290 TraceCheckUtils]: 24: Hoare triple {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} assume !(3 != main_#t~mem11#1);havoc main_#t~mem11#1; {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} is VALID [2022-02-20 23:49:03,769 INFO L290 TraceCheckUtils]: 25: Hoare triple {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} SUMMARY for call main_#t~mem17#1 := read~int(main_~p~0#1.base, main_~p~0#1.offset, 4); srcloc: L555-4 {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} is VALID [2022-02-20 23:49:03,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {11334#(and (= (select |#valid| |ULTIMATE.start_main_~a~0#1.base|) 1) (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (not (= |ULTIMATE.start_main_~a~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~a~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)))))))} assume !(3 != main_#t~mem17#1 || main_~i~0#1 > 20);havoc main_#t~mem17#1;main_~p~0#1.base, main_~p~0#1.offset := main_~a~0#1.base, main_~a~0#1.offset; {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem18#1.base, main_#t~mem18#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L569-3 {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,771 INFO L290 TraceCheckUtils]: 28: Hoare triple {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume !!(main_#t~mem18#1.base != 0 || main_#t~mem18#1.offset != 0);havoc main_#t~mem18#1.base, main_#t~mem18#1.offset; {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {11350#(and (exists ((|ULTIMATE.start_main_~p~0#1.offset| Int)) (and (<= 0 |ULTIMATE.start_main_~p~0#1.offset|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8))) 1) (<= |ULTIMATE.start_main_~p~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~p~0#1.base|) (+ |ULTIMATE.start_main_~p~0#1.offset| 8)) |ULTIMATE.start_main_~p~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~p~0#1.base, 8 + main_~p~0#1.offset, 4); srcloc: L570 {11360#(and (exists ((v_arrayElimCell_98 Int)) (and (not (= v_arrayElimCell_98 |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| v_arrayElimCell_98) 1) (or (= |ULTIMATE.start_main_#t~mem19#1.base| v_arrayElimCell_98) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {11360#(and (exists ((v_arrayElimCell_98 Int)) (and (not (= v_arrayElimCell_98 |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| v_arrayElimCell_98) 1) (or (= |ULTIMATE.start_main_#t~mem19#1.base| v_arrayElimCell_98) (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} main_~t~0#1.base, main_~t~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {11364#(and (exists ((v_arrayElimCell_98 Int)) (and (not (= v_arrayElimCell_98 |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| v_arrayElimCell_98) 1) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_98)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,775 INFO L290 TraceCheckUtils]: 31: Hoare triple {11364#(and (exists ((v_arrayElimCell_98 Int)) (and (not (= v_arrayElimCell_98 |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| v_arrayElimCell_98) 1) (or (< 0 |ULTIMATE.start_main_~p~0#1.offset|) (< |ULTIMATE.start_main_~p~0#1.offset| 0) (= |ULTIMATE.start_main_~t~0#1.base| v_arrayElimCell_98)))) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 == main_~p~0#1.offset; {11368#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,776 INFO L290 TraceCheckUtils]: 32: Hoare triple {11368#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume main_~p~0#1.base < #StackHeapBarrier; {11368#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,777 INFO L290 TraceCheckUtils]: 33: Hoare triple {11368#(and (not (= |ULTIMATE.start_main_~t~0#1.base| |ULTIMATE.start_main_~p~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~t~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1))} assume 0 == main_~p~0#1.base || 1 == #valid[main_~p~0#1.base];call ULTIMATE.dealloc(main_~p~0#1.base, main_~p~0#1.offset);main_~p~0#1.base, main_~p~0#1.offset := main_~t~0#1.base, main_~t~0#1.offset; {11375#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} is VALID [2022-02-20 23:49:03,777 INFO L290 TraceCheckUtils]: 34: Hoare triple {11375#(= (select |#valid| |ULTIMATE.start_main_~p~0#1.base|) 1)} assume !(1 == #valid[main_~p~0#1.base]); {11249#false} is VALID [2022-02-20 23:49:03,777 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:03,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:04,087 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_730 Int) (v_ArrVal_729 (Array Int Int))) (= (select (store |c_#valid| |c_ULTIMATE.start_main_~a~0#1.base| v_ArrVal_730) (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base| v_ArrVal_729) |c_ULTIMATE.start_main_~a~0#1.base|) 8)) 1)) is different from false [2022-02-20 23:49:04,154 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_730 Int) (v_ArrVal_729 (Array Int Int))) (= (select (store |c_#valid| |c_ULTIMATE.start_main_~a~0#1.base| v_ArrVal_730) (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_#t~mem10#1.base| v_ArrVal_729) |c_ULTIMATE.start_main_~a~0#1.base|) 8)) 1)) is different from false [2022-02-20 23:49:04,172 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_730 Int) (v_ArrVal_729 (Array Int Int))) (= (select (store |c_#valid| |c_ULTIMATE.start_main_~a~0#1.base| v_ArrVal_730) (select (select (store |c_#memory_$Pointer$.base| (select (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~p~0#1.base|) (+ |c_ULTIMATE.start_main_~p~0#1.offset| 8)) v_ArrVal_729) |c_ULTIMATE.start_main_~a~0#1.base|) 8)) 1)) is different from false [2022-02-20 23:49:04,197 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:49:04,197 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 25 treesize of output 26 [2022-02-20 23:49:04,211 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:49:04,211 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 42 treesize of output 45 [2022-02-20 23:49:04,214 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 14 treesize of output 12