./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/list-ext-properties/test-0504_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/test-0504_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 ad4b9fd301578a7ddb25530c70896459a49284f596306d3b6d0c853e43916174 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:48:34,874 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:48:34,875 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:48:34,896 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:48:34,902 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:48:34,903 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:48:34,905 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:48:34,908 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:48:34,910 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:48:34,911 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:48:34,912 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:48:34,912 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:48:34,914 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:48:34,916 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:48:34,917 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:48:34,918 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:48:34,919 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:48:34,927 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:48:34,928 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:48:34,929 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:48:34,930 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:48:34,932 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:48:34,933 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:48:34,934 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:48:34,936 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:48:34,937 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:48:34,937 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:48:34,938 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:48:34,939 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:48:34,939 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:48:34,939 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:48:34,940 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:48:34,941 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:48:34,941 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:48:34,942 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:48:34,942 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:48:34,943 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:48:34,944 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:48:34,944 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:48:34,944 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:48:34,945 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:48:34,945 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:34,963 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:48:34,963 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:48:34,964 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:48:34,964 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:48:34,964 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:48:34,964 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:48:34,965 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:48:34,965 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:48:34,965 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:48:34,965 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:48:34,966 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:48:34,966 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:48:34,967 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:48:34,968 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:48:34,968 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:48:34,968 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:48:34,968 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:48:34,968 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:48:34,968 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:48:34,969 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:48:34,969 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:34,970 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:48:34,970 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:48:34,970 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:48:34,970 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:48:34,970 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 -> ad4b9fd301578a7ddb25530c70896459a49284f596306d3b6d0c853e43916174 [2022-02-20 23:48:35,190 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:48:35,213 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:48:35,216 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:48:35,217 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:48:35,218 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:48:35,219 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-ext-properties/test-0504_1.i [2022-02-20 23:48:35,286 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/300a5c8c1/f2ebf7d5ca1d4f1382a1f68db9fcb6a4/FLAGaded3cb7e [2022-02-20 23:48:35,757 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:48:35,757 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/test-0504_1.i [2022-02-20 23:48:35,772 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/300a5c8c1/f2ebf7d5ca1d4f1382a1f68db9fcb6a4/FLAGaded3cb7e [2022-02-20 23:48:36,118 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/300a5c8c1/f2ebf7d5ca1d4f1382a1f68db9fcb6a4 [2022-02-20 23:48:36,119 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:48:36,121 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:48:36,122 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:36,122 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:48:36,137 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:48:36,139 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,140 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@71979834 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36, skipping insertion in model container [2022-02-20 23:48:36,140 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,146 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:48:36,174 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:48:36,429 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:36,435 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:48:36,487 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:48:36,516 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:48:36,516 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36 WrapperNode [2022-02-20 23:48:36,516 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:48:36,517 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:36,517 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:48:36,517 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:48:36,523 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:36" (1/1) ... [2022-02-20 23:48:36,537 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:36" (1/1) ... [2022-02-20 23:48:36,571 INFO L137 Inliner]: procedures = 123, calls = 28, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 112 [2022-02-20 23:48:36,571 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:48:36,572 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:48:36,572 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:48:36,572 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:48:36,578 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:36" (1/1) ... [2022-02-20 23:48:36,578 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:36" (1/1) ... [2022-02-20 23:48:36,591 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:36" (1/1) ... [2022-02-20 23:48:36,592 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:36" (1/1) ... [2022-02-20 23:48:36,598 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:36" (1/1) ... [2022-02-20 23:48:36,608 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:36" (1/1) ... [2022-02-20 23:48:36,628 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:36" (1/1) ... [2022-02-20 23:48:36,631 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:48:36,631 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:48:36,631 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:48:36,631 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:48:36,644 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (1/1) ... [2022-02-20 23:48:36,655 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:48:36,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:36,685 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:36,688 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:36,714 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:48:36,715 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:48:36,715 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:48:36,715 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:48:36,715 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:48:36,715 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:48:36,716 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:48:36,716 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:48:36,716 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:48:36,716 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:48:36,779 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:48:36,781 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:48:37,192 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:48:37,207 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:48:37,207 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:48:37,209 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:37 BoogieIcfgContainer [2022-02-20 23:48:37,209 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:48:37,210 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:48:37,210 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:48:37,213 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:48:37,213 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:48:36" (1/3) ... [2022-02-20 23:48:37,214 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@a783bb3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:37, skipping insertion in model container [2022-02-20 23:48:37,214 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:48:36" (2/3) ... [2022-02-20 23:48:37,214 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@a783bb3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:48:37, skipping insertion in model container [2022-02-20 23:48:37,214 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:48:37" (3/3) ... [2022-02-20 23:48:37,215 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0504_1.i [2022-02-20 23:48:37,219 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:48:37,220 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 43 error locations. [2022-02-20 23:48:37,254 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:48:37,260 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:37,260 INFO L340 AbstractCegarLoop]: Starting to check reachability of 43 error locations. [2022-02-20 23:48:37,282 INFO L276 IsEmpty]: Start isEmpty. Operand has 94 states, 50 states have (on average 2.14) internal successors, (107), 93 states have internal predecessors, (107), 0 states have call successors, (0), 0 states have call 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:37,287 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:48:37,288 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:37,289 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:48:37,289 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:37,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:37,296 INFO L85 PathProgramCache]: Analyzing trace with hash 28793288, now seen corresponding path program 1 times [2022-02-20 23:48:37,303 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:37,304 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1639320656] [2022-02-20 23:48:37,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:37,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:37,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:37,419 INFO L290 TraceCheckUtils]: 0: Hoare triple {97#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(14, 2); {97#true} is VALID [2022-02-20 23:48:37,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {97#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {97#true} is VALID [2022-02-20 23:48:37,421 INFO L290 TraceCheckUtils]: 2: Hoare triple {97#true} assume !true; {98#false} is VALID [2022-02-20 23:48:37,421 INFO L290 TraceCheckUtils]: 3: Hoare triple {98#false} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {98#false} is VALID [2022-02-20 23:48:37,422 INFO L290 TraceCheckUtils]: 4: Hoare triple {98#false} assume !(1 == #valid[main_~first~0#1.base]); {98#false} is VALID [2022-02-20 23:48:37,423 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:37,423 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:37,424 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1639320656] [2022-02-20 23:48:37,424 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1639320656] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:37,424 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:37,424 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:37,425 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [527167373] [2022-02-20 23:48:37,426 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:37,431 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:37,431 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:37,434 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,446 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:48:37,447 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:37,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:48:37,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:48:37,467 INFO L87 Difference]: Start difference. First operand has 94 states, 50 states have (on average 2.14) internal successors, (107), 93 states have internal predecessors, (107), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,555 INFO L93 Difference]: Finished difference Result 94 states and 101 transitions. [2022-02-20 23:48:37,555 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:48:37,556 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:48:37,556 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:37,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 107 transitions. [2022-02-20 23:48:37,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 107 transitions. [2022-02-20 23:48:37,595 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 107 transitions. [2022-02-20 23:48:37,723 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,739 INFO L225 Difference]: With dead ends: 94 [2022-02-20 23:48:37,739 INFO L226 Difference]: Without dead ends: 92 [2022-02-20 23:48:37,741 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:37,744 INFO L933 BasicCegarLoop]: 101 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, 101 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:37,746 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 101 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:37,761 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-02-20 23:48:37,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 92. [2022-02-20 23:48:37,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:37,780 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,782 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,785 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,791 INFO L93 Difference]: Finished difference Result 92 states and 99 transitions. [2022-02-20 23:48:37,791 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 99 transitions. [2022-02-20 23:48:37,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:37,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:37,793 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 92 states. [2022-02-20 23:48:37,793 INFO L87 Difference]: Start difference. First operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 92 states. [2022-02-20 23:48:37,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:37,804 INFO L93 Difference]: Finished difference Result 92 states and 99 transitions. [2022-02-20 23:48:37,804 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 99 transitions. [2022-02-20 23:48:37,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:37,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:37,805 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:37,806 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:37,806 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 49 states have (on average 2.020408163265306) internal successors, (99), 91 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 99 transitions. [2022-02-20 23:48:37,815 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 99 transitions. Word has length 5 [2022-02-20 23:48:37,816 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:37,816 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 99 transitions. [2022-02-20 23:48:37,817 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,817 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 99 transitions. [2022-02-20 23:48:37,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:48:37,818 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:37,818 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:37,819 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:48:37,819 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:37,821 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:37,821 INFO L85 PathProgramCache]: Analyzing trace with hash 1806850220, now seen corresponding path program 1 times [2022-02-20 23:48:37,821 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:37,822 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [304208248] [2022-02-20 23:48:37,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:37,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:37,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:37,915 INFO L290 TraceCheckUtils]: 0: Hoare triple {471#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(14, 2); {471#true} is VALID [2022-02-20 23:48:37,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {471#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:37,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:37,917 INFO L290 TraceCheckUtils]: 3: Hoare triple {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:37,918 INFO L290 TraceCheckUtils]: 4: Hoare triple {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:37,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {473#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {472#false} is VALID [2022-02-20 23:48:37,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {472#false} assume !(1 == #valid[main_~first~0#1.base]); {472#false} is VALID [2022-02-20 23:48:37,919 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:37,921 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:37,921 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [304208248] [2022-02-20 23:48:37,921 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [304208248] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:37,921 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:37,922 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:37,922 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [513364989] [2022-02-20 23:48:37,922 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:37,923 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:37,923 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:37,924 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:37,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:37,930 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:37,931 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:37,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:37,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:37,932 INFO L87 Difference]: Start difference. First operand 92 states and 99 transitions. Second operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,063 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2022-02-20 23:48:38,063 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:38,063 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:38,064 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:38,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 108 transitions. [2022-02-20 23:48:38,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 108 transitions. [2022-02-20 23:48:38,067 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 108 transitions. [2022-02-20 23:48:38,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,171 INFO L225 Difference]: With dead ends: 99 [2022-02-20 23:48:38,171 INFO L226 Difference]: Without dead ends: 99 [2022-02-20 23:48:38,172 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,173 INFO L933 BasicCegarLoop]: 96 mSDtfsCounter, 4 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 188 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:38,173 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 188 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:38,174 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-02-20 23:48:38,177 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 96. [2022-02-20 23:48:38,177 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:38,178 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call 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:38,178 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call 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:38,178 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call 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:38,181 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,181 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2022-02-20 23:48:38,181 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 107 transitions. [2022-02-20 23:48:38,182 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,182 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,183 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 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 99 states. [2022-02-20 23:48:38,183 INFO L87 Difference]: Start difference. First operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 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 99 states. [2022-02-20 23:48:38,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,186 INFO L93 Difference]: Finished difference Result 99 states and 107 transitions. [2022-02-20 23:48:38,186 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 107 transitions. [2022-02-20 23:48:38,187 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,187 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,187 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:38,187 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:38,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 53 states have (on average 1.9811320754716981) internal successors, (105), 95 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call 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:38,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 105 transitions. [2022-02-20 23:48:38,190 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 105 transitions. Word has length 7 [2022-02-20 23:48:38,190 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:38,190 INFO L470 AbstractCegarLoop]: Abstraction has 96 states and 105 transitions. [2022-02-20 23:48:38,190 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,191 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 105 transitions. [2022-02-20 23:48:38,191 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:48:38,191 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:38,191 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:38,191 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:48:38,192 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:38,192 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:38,192 INFO L85 PathProgramCache]: Analyzing trace with hash 1806849231, now seen corresponding path program 1 times [2022-02-20 23:48:38,193 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:38,193 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [18872365] [2022-02-20 23:48:38,193 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:38,193 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:38,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:38,227 INFO L290 TraceCheckUtils]: 0: Hoare triple {869#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(14, 2); {869#true} is VALID [2022-02-20 23:48:38,227 INFO L290 TraceCheckUtils]: 1: Hoare triple {869#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {869#true} is VALID [2022-02-20 23:48:38,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {869#true} main_#t~short4#1 := main_~c1~0#1 < 5; {869#true} is VALID [2022-02-20 23:48:38,228 INFO L290 TraceCheckUtils]: 3: Hoare triple {869#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {869#true} is VALID [2022-02-20 23:48:38,229 INFO L290 TraceCheckUtils]: 4: Hoare triple {869#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {871#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:38,229 INFO L290 TraceCheckUtils]: 5: Hoare triple {871#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {871#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:38,230 INFO L290 TraceCheckUtils]: 6: Hoare triple {871#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(1 == #valid[main_~x~0#1.base]); {870#false} is VALID [2022-02-20 23:48:38,230 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:38,230 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:38,230 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [18872365] [2022-02-20 23:48:38,231 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [18872365] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:38,231 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:38,231 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:38,231 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1828358455] [2022-02-20 23:48:38,231 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:38,232 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:38,232 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:38,232 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,239 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:38,239 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:38,240 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:38,240 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,240 INFO L87 Difference]: Start difference. First operand 96 states and 105 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,431 INFO L93 Difference]: Finished difference Result 121 states and 132 transitions. [2022-02-20 23:48:38,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:38,431 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:38,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:38,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 139 transitions. [2022-02-20 23:48:38,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 139 transitions. [2022-02-20 23:48:38,434 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 139 transitions. [2022-02-20 23:48:38,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,541 INFO L225 Difference]: With dead ends: 121 [2022-02-20 23:48:38,541 INFO L226 Difference]: Without dead ends: 121 [2022-02-20 23:48:38,542 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,546 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 84 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:38,547 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 79 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:38,549 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-02-20 23:48:38,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 88. [2022-02-20 23:48:38,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:38,561 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call 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:38,561 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call 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:38,561 INFO L87 Difference]: Start difference. First operand 121 states. Second operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call 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:38,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,565 INFO L93 Difference]: Finished difference Result 121 states and 132 transitions. [2022-02-20 23:48:38,565 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 132 transitions. [2022-02-20 23:48:38,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 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 121 states. [2022-02-20 23:48:38,572 INFO L87 Difference]: Start difference. First operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 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 121 states. [2022-02-20 23:48:38,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,575 INFO L93 Difference]: Finished difference Result 121 states and 132 transitions. [2022-02-20 23:48:38,576 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 132 transitions. [2022-02-20 23:48:38,577 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,578 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:38,578 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:38,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 53 states have (on average 1.830188679245283) internal successors, (97), 87 states have internal predecessors, (97), 0 states have call successors, (0), 0 states have call 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:38,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 97 transitions. [2022-02-20 23:48:38,585 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 97 transitions. Word has length 7 [2022-02-20 23:48:38,585 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:38,585 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 97 transitions. [2022-02-20 23:48:38,585 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,585 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 97 transitions. [2022-02-20 23:48:38,586 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:48:38,586 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:38,586 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:38,586 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:48:38,587 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:38,587 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:38,588 INFO L85 PathProgramCache]: Analyzing trace with hash 1806849232, now seen corresponding path program 1 times [2022-02-20 23:48:38,588 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:38,588 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [657253170] [2022-02-20 23:48:38,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:38,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:38,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:38,648 INFO L290 TraceCheckUtils]: 0: Hoare triple {1325#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(14, 2); {1325#true} is VALID [2022-02-20 23:48:38,649 INFO L290 TraceCheckUtils]: 1: Hoare triple {1325#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {1325#true} is VALID [2022-02-20 23:48:38,650 INFO L290 TraceCheckUtils]: 2: Hoare triple {1325#true} main_#t~short4#1 := main_~c1~0#1 < 5; {1325#true} is VALID [2022-02-20 23:48:38,650 INFO L290 TraceCheckUtils]: 3: Hoare triple {1325#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {1325#true} is VALID [2022-02-20 23:48:38,651 INFO L290 TraceCheckUtils]: 4: Hoare triple {1325#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {1327#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:38,652 INFO L290 TraceCheckUtils]: 5: Hoare triple {1327#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {1327#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:38,654 INFO L290 TraceCheckUtils]: 6: Hoare triple {1327#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(4 + (12 + main_~x~0#1.offset) <= #length[main_~x~0#1.base] && 0 <= 12 + main_~x~0#1.offset); {1326#false} is VALID [2022-02-20 23:48:38,655 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:38,655 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:38,655 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [657253170] [2022-02-20 23:48:38,655 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [657253170] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:38,655 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:38,655 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:38,656 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1360839193] [2022-02-20 23:48:38,656 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:38,656 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:38,656 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:38,657 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,662 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:38,662 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:38,663 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:38,663 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,664 INFO L87 Difference]: Start difference. First operand 88 states and 97 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,819 INFO L93 Difference]: Finished difference Result 129 states and 145 transitions. [2022-02-20 23:48:38,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:38,820 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:48:38,820 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:38,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 145 transitions. [2022-02-20 23:48:38,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 145 transitions. [2022-02-20 23:48:38,823 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 145 transitions. [2022-02-20 23:48:38,941 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:38,943 INFO L225 Difference]: With dead ends: 129 [2022-02-20 23:48:38,943 INFO L226 Difference]: Without dead ends: 129 [2022-02-20 23:48:38,944 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:38,945 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 57 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:38,945 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 120 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:38,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-02-20 23:48:38,948 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 90. [2022-02-20 23:48:38,949 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:38,949 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,949 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,950 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,953 INFO L93 Difference]: Finished difference Result 129 states and 145 transitions. [2022-02-20 23:48:38,953 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 145 transitions. [2022-02-20 23:48:38,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,954 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 129 states. [2022-02-20 23:48:38,954 INFO L87 Difference]: Start difference. First operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 129 states. [2022-02-20 23:48:38,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:38,957 INFO L93 Difference]: Finished difference Result 129 states and 145 transitions. [2022-02-20 23:48:38,958 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 145 transitions. [2022-02-20 23:48:38,958 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:38,958 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:38,958 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:38,958 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:38,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 60 states have (on average 1.7333333333333334) internal successors, (104), 89 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 104 transitions. [2022-02-20 23:48:38,961 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 104 transitions. Word has length 7 [2022-02-20 23:48:38,961 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:38,961 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 104 transitions. [2022-02-20 23:48:38,961 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:38,974 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 104 transitions. [2022-02-20 23:48:38,974 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:48:38,974 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:38,974 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:38,975 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:48:38,975 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr42ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:38,975 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:38,975 INFO L85 PathProgramCache]: Analyzing trace with hash 177781672, now seen corresponding path program 1 times [2022-02-20 23:48:38,976 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:38,976 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1445157462] [2022-02-20 23:48:38,976 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:38,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:38,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:39,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {1807#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(14, 2); {1807#true} is VALID [2022-02-20 23:48:39,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {1807#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#t~short4#1 := main_~c1~0#1 < 5; {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,003 INFO L290 TraceCheckUtils]: 3: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,003 INFO L290 TraceCheckUtils]: 4: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,004 INFO L290 TraceCheckUtils]: 5: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~c1~0#1 > 0); {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,004 INFO L290 TraceCheckUtils]: 6: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:39,004 INFO L290 TraceCheckUtils]: 7: Hoare triple {1809#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {1808#false} is VALID [2022-02-20 23:48:39,005 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:39,005 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:39,005 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1445157462] [2022-02-20 23:48:39,005 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1445157462] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:39,005 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:39,005 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:39,006 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [839671454] [2022-02-20 23:48:39,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,006 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,006 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,006 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,012 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:39,012 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:39,012 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:39,013 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:39,013 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:39,013 INFO L87 Difference]: Start difference. First operand 90 states and 104 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,122 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2022-02-20 23:48:39,122 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:39,122 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,122 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:39,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 94 transitions. [2022-02-20 23:48:39,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 94 transitions. [2022-02-20 23:48:39,125 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 94 transitions. [2022-02-20 23:48:39,193 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:39,194 INFO L225 Difference]: With dead ends: 92 [2022-02-20 23:48:39,194 INFO L226 Difference]: Without dead ends: 89 [2022-02-20 23:48:39,194 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:39,195 INFO L933 BasicCegarLoop]: 85 mSDtfsCounter, 1 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:39,195 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1 Valid, 134 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:39,196 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2022-02-20 23:48:39,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 89. [2022-02-20 23:48:39,200 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:39,202 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call 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:39,202 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call 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:39,202 INFO L87 Difference]: Start difference. First operand 89 states. Second operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call 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:39,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,204 INFO L93 Difference]: Finished difference Result 89 states and 102 transitions. [2022-02-20 23:48:39,204 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 102 transitions. [2022-02-20 23:48:39,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,205 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 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 89 states. [2022-02-20 23:48:39,205 INFO L87 Difference]: Start difference. First operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 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 89 states. [2022-02-20 23:48:39,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,207 INFO L93 Difference]: Finished difference Result 89 states and 102 transitions. [2022-02-20 23:48:39,207 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 102 transitions. [2022-02-20 23:48:39,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,208 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:39,208 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:39,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 59 states have (on average 1.728813559322034) internal successors, (102), 88 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call 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:39,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 102 transitions. [2022-02-20 23:48:39,210 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 102 transitions. Word has length 8 [2022-02-20 23:48:39,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:39,211 INFO L470 AbstractCegarLoop]: Abstraction has 89 states and 102 transitions. [2022-02-20 23:48:39,211 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 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:39,211 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 102 transitions. [2022-02-20 23:48:39,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:48:39,212 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:39,212 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:39,212 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:48:39,212 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:39,213 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:39,213 INFO L85 PathProgramCache]: Analyzing trace with hash 875833349, now seen corresponding path program 1 times [2022-02-20 23:48:39,213 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:39,213 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985564419] [2022-02-20 23:48:39,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:39,214 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:39,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:39,347 INFO L290 TraceCheckUtils]: 0: Hoare triple {2171#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(14, 2); {2171#true} is VALID [2022-02-20 23:48:39,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {2171#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {2171#true} is VALID [2022-02-20 23:48:39,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {2171#true} main_#t~short4#1 := main_~c1~0#1 < 5; {2171#true} is VALID [2022-02-20 23:48:39,348 INFO L290 TraceCheckUtils]: 3: Hoare triple {2171#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {2171#true} is VALID [2022-02-20 23:48:39,349 INFO L290 TraceCheckUtils]: 4: Hoare triple {2171#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,350 INFO L290 TraceCheckUtils]: 6: Hoare triple {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,351 INFO L290 TraceCheckUtils]: 7: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,352 INFO L290 TraceCheckUtils]: 8: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,352 INFO L290 TraceCheckUtils]: 9: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,353 INFO L290 TraceCheckUtils]: 10: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,355 INFO L290 TraceCheckUtils]: 13: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,356 INFO L290 TraceCheckUtils]: 14: Hoare triple {2174#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {2175#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,357 INFO L290 TraceCheckUtils]: 15: Hoare triple {2175#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:39,360 INFO L290 TraceCheckUtils]: 16: Hoare triple {2173#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(4 + main_~x~0#1.offset <= #length[main_~x~0#1.base] && 0 <= main_~x~0#1.offset); {2172#false} is VALID [2022-02-20 23:48:39,360 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:39,360 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:39,361 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [985564419] [2022-02-20 23:48:39,361 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [985564419] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:39,361 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:39,361 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:39,361 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [730473587] [2022-02-20 23:48:39,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,362 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:48:39,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,377 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:39,377 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:39,378 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:39,378 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:39,378 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:39,378 INFO L87 Difference]: Start difference. First operand 89 states and 102 transitions. Second operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,662 INFO L93 Difference]: Finished difference Result 119 states and 134 transitions. [2022-02-20 23:48:39,662 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:39,662 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:48:39,662 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:39,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 125 transitions. [2022-02-20 23:48:39,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 125 transitions. [2022-02-20 23:48:39,665 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 125 transitions. [2022-02-20 23:48:39,778 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:48:39,779 INFO L225 Difference]: With dead ends: 119 [2022-02-20 23:48:39,779 INFO L226 Difference]: Without dead ends: 119 [2022-02-20 23:48:39,780 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:39,780 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 199 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 199 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 108 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:39,780 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [199 Valid, 87 Invalid, 108 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:39,781 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-02-20 23:48:39,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 79. [2022-02-20 23:48:39,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:39,782 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,782 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,782 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,785 INFO L93 Difference]: Finished difference Result 119 states and 134 transitions. [2022-02-20 23:48:39,785 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 134 transitions. [2022-02-20 23:48:39,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 119 states. [2022-02-20 23:48:39,785 INFO L87 Difference]: Start difference. First operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 119 states. [2022-02-20 23:48:39,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,787 INFO L93 Difference]: Finished difference Result 119 states and 134 transitions. [2022-02-20 23:48:39,787 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 134 transitions. [2022-02-20 23:48:39,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:39,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:39,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:39,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:39,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 52 states have (on average 1.6730769230769231) internal successors, (87), 78 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 87 transitions. [2022-02-20 23:48:39,789 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 87 transitions. Word has length 17 [2022-02-20 23:48:39,789 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:39,789 INFO L470 AbstractCegarLoop]: Abstraction has 79 states and 87 transitions. [2022-02-20 23:48:39,789 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.25) internal successors, (17), 5 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:39,790 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 87 transitions. [2022-02-20 23:48:39,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:39,790 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:39,790 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:39,790 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:48:39,790 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr24REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:39,790 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:39,790 INFO L85 PathProgramCache]: Analyzing trace with hash 1380999357, now seen corresponding path program 1 times [2022-02-20 23:48:39,790 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:39,790 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [121050550] [2022-02-20 23:48:39,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:39,791 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:39,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:39,848 INFO L290 TraceCheckUtils]: 0: Hoare triple {2616#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(14, 2); {2616#true} is VALID [2022-02-20 23:48:39,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {2616#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,851 INFO L290 TraceCheckUtils]: 2: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,851 INFO L290 TraceCheckUtils]: 3: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,851 INFO L290 TraceCheckUtils]: 4: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,853 INFO L290 TraceCheckUtils]: 6: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,853 INFO L290 TraceCheckUtils]: 7: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,854 INFO L290 TraceCheckUtils]: 8: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,854 INFO L290 TraceCheckUtils]: 9: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,855 INFO L290 TraceCheckUtils]: 10: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,855 INFO L290 TraceCheckUtils]: 11: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,855 INFO L290 TraceCheckUtils]: 12: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short8#1 := main_~c2~0#1 < 3; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,856 INFO L290 TraceCheckUtils]: 13: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,856 INFO L290 TraceCheckUtils]: 14: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,857 INFO L290 TraceCheckUtils]: 15: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~c2~0#1 := 0; {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:39,857 INFO L290 TraceCheckUtils]: 16: Hoare triple {2618#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {2617#false} is VALID [2022-02-20 23:48:39,857 INFO L290 TraceCheckUtils]: 17: Hoare triple {2617#false} assume !(1 == #valid[main_~last~0#1.base]); {2617#false} is VALID [2022-02-20 23:48:39,857 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:39,857 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:39,857 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [121050550] [2022-02-20 23:48:39,857 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [121050550] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:39,857 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:39,858 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:39,858 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [809176742] [2022-02-20 23:48:39,858 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:39,858 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,858 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:39,858 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,870 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:39,870 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:39,870 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:39,870 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:39,870 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:39,871 INFO L87 Difference]: Start difference. First operand 79 states and 87 transitions. Second operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:39,956 INFO L93 Difference]: Finished difference Result 112 states and 122 transitions. [2022-02-20 23:48:39,956 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:39,956 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,956 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:39,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 123 transitions. [2022-02-20 23:48:39,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:39,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 123 transitions. [2022-02-20 23:48:39,959 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 123 transitions. [2022-02-20 23:48:40,051 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:40,052 INFO L225 Difference]: With dead ends: 112 [2022-02-20 23:48:40,052 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:48:40,052 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:40,053 INFO L933 BasicCegarLoop]: 82 mSDtfsCounter, 24 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:40,053 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 157 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:40,053 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:48:40,055 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 102. [2022-02-20 23:48:40,055 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:40,055 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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:40,055 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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:40,056 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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:40,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,058 INFO L93 Difference]: Finished difference Result 112 states and 122 transitions. [2022-02-20 23:48:40,058 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 122 transitions. [2022-02-20 23:48:40,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,058 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,059 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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 112 states. [2022-02-20 23:48:40,059 INFO L87 Difference]: Start difference. First operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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 112 states. [2022-02-20 23:48:40,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,061 INFO L93 Difference]: Finished difference Result 112 states and 122 transitions. [2022-02-20 23:48:40,061 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 122 transitions. [2022-02-20 23:48:40,062 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,062 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:40,062 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:40,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 75 states have (on average 1.6266666666666667) internal successors, (122), 101 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:40,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 122 transitions. [2022-02-20 23:48:40,063 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 122 transitions. Word has length 18 [2022-02-20 23:48:40,064 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:40,064 INFO L470 AbstractCegarLoop]: Abstraction has 102 states and 122 transitions. [2022-02-20 23:48:40,064 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.0) internal successors, (18), 3 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:40,064 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 122 transitions. [2022-02-20 23:48:40,064 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:40,064 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:40,064 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:40,064 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:48:40,064 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:40,065 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:40,065 INFO L85 PathProgramCache]: Analyzing trace with hash 1381030048, now seen corresponding path program 1 times [2022-02-20 23:48:40,065 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:40,065 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [275653791] [2022-02-20 23:48:40,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:40,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:40,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:40,107 INFO L290 TraceCheckUtils]: 0: Hoare triple {3059#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(14, 2); {3059#true} is VALID [2022-02-20 23:48:40,107 INFO L290 TraceCheckUtils]: 1: Hoare triple {3059#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 2: Hoare triple {3059#true} main_#t~short4#1 := main_~c1~0#1 < 5; {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 3: Hoare triple {3059#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 4: Hoare triple {3059#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 5: Hoare triple {3059#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 6: Hoare triple {3059#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 7: Hoare triple {3059#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {3059#true} is VALID [2022-02-20 23:48:40,108 INFO L290 TraceCheckUtils]: 8: Hoare triple {3059#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {3059#true} is VALID [2022-02-20 23:48:40,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {3059#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {3059#true} is VALID [2022-02-20 23:48:40,109 INFO L290 TraceCheckUtils]: 10: Hoare triple {3059#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {3059#true} is VALID [2022-02-20 23:48:40,109 INFO L290 TraceCheckUtils]: 11: Hoare triple {3059#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {3059#true} is VALID [2022-02-20 23:48:40,109 INFO L290 TraceCheckUtils]: 12: Hoare triple {3059#true} main_#t~short8#1 := main_~c2~0#1 < 3; {3059#true} is VALID [2022-02-20 23:48:40,109 INFO L290 TraceCheckUtils]: 13: Hoare triple {3059#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {3059#true} is VALID [2022-02-20 23:48:40,110 INFO L290 TraceCheckUtils]: 14: Hoare triple {3059#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:40,110 INFO L290 TraceCheckUtils]: 15: Hoare triple {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:40,111 INFO L290 TraceCheckUtils]: 16: Hoare triple {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:40,111 INFO L290 TraceCheckUtils]: 17: Hoare triple {3061#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(1 == #valid[main_~y~0#1.base]); {3060#false} is VALID [2022-02-20 23:48:40,111 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:40,111 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:40,111 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [275653791] [2022-02-20 23:48:40,111 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [275653791] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:40,112 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:40,112 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:40,112 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1331223525] [2022-02-20 23:48:40,112 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:40,112 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:40,112 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,123 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:40,123 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:40,123 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:40,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:40,124 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:40,124 INFO L87 Difference]: Start difference. First operand 102 states and 122 transitions. Second operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,208 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:48:40,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:40,208 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,208 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:40,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 83 transitions. [2022-02-20 23:48:40,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 83 transitions. [2022-02-20 23:48:40,210 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 83 transitions. [2022-02-20 23:48:40,276 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:40,278 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:48:40,278 INFO L226 Difference]: Without dead ends: 98 [2022-02-20 23:48:40,278 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:40,278 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 14 mSDsluCounter, 36 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:40,278 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 102 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:40,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-02-20 23:48:40,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 98. [2022-02-20 23:48:40,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:40,280 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call 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:40,280 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call 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:40,281 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call 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:40,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,282 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:48:40,282 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-02-20 23:48:40,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,283 INFO L74 IsIncluded]: Start isIncluded. First operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 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 98 states. [2022-02-20 23:48:40,283 INFO L87 Difference]: Start difference. First operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 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 98 states. [2022-02-20 23:48:40,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,284 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:48:40,284 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-02-20 23:48:40,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,285 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:40,285 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:40,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 75 states have (on average 1.52) internal successors, (114), 97 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call 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:40,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 114 transitions. [2022-02-20 23:48:40,286 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 114 transitions. Word has length 18 [2022-02-20 23:48:40,286 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:40,286 INFO L470 AbstractCegarLoop]: Abstraction has 98 states and 114 transitions. [2022-02-20 23:48:40,286 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,287 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-02-20 23:48:40,287 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:48:40,287 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:40,287 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:40,291 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:48:40,292 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:40,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:40,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1381030049, now seen corresponding path program 1 times [2022-02-20 23:48:40,292 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:40,292 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [181156268] [2022-02-20 23:48:40,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:40,292 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:40,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:40,356 INFO L290 TraceCheckUtils]: 0: Hoare triple {3456#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(14, 2); {3456#true} is VALID [2022-02-20 23:48:40,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {3456#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {3456#true} is VALID [2022-02-20 23:48:40,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {3456#true} main_#t~short4#1 := main_~c1~0#1 < 5; {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 3: Hoare triple {3456#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 4: Hoare triple {3456#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 5: Hoare triple {3456#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 6: Hoare triple {3456#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 7: Hoare triple {3456#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 8: Hoare triple {3456#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 9: Hoare triple {3456#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 10: Hoare triple {3456#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 11: Hoare triple {3456#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 12: Hoare triple {3456#true} main_#t~short8#1 := main_~c2~0#1 < 3; {3456#true} is VALID [2022-02-20 23:48:40,357 INFO L290 TraceCheckUtils]: 13: Hoare triple {3456#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {3456#true} is VALID [2022-02-20 23:48:40,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {3456#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} is VALID [2022-02-20 23:48:40,358 INFO L290 TraceCheckUtils]: 15: Hoare triple {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} is VALID [2022-02-20 23:48:40,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} is VALID [2022-02-20 23:48:40,359 INFO L290 TraceCheckUtils]: 17: Hoare triple {3458#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) 0))} assume !(4 + main_~y~0#1.offset <= #length[main_~y~0#1.base] && 0 <= main_~y~0#1.offset); {3457#false} is VALID [2022-02-20 23:48:40,359 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:40,360 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:40,360 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [181156268] [2022-02-20 23:48:40,360 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [181156268] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:40,360 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:40,360 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:48:40,360 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1677458407] [2022-02-20 23:48:40,360 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:40,361 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:40,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,373 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:40,373 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:48:40,373 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:40,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:48:40,374 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:40,374 INFO L87 Difference]: Start difference. First operand 98 states and 114 transitions. Second operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,466 INFO L93 Difference]: Finished difference Result 94 states and 106 transitions. [2022-02-20 23:48:40,466 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:48:40,466 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,466 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:40,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:48:40,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 79 transitions. [2022-02-20 23:48:40,481 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 79 transitions. [2022-02-20 23:48:40,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:40,541 INFO L225 Difference]: With dead ends: 94 [2022-02-20 23:48:40,541 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 23:48:40,541 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:48:40,543 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 10 mSDsluCounter, 41 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:40,543 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 107 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:40,544 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 23:48:40,545 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 94. [2022-02-20 23:48:40,545 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:40,545 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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:40,547 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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:40,547 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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:40,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,548 INFO L93 Difference]: Finished difference Result 94 states and 106 transitions. [2022-02-20 23:48:40,548 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 106 transitions. [2022-02-20 23:48:40,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,549 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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 94 states. [2022-02-20 23:48:40,549 INFO L87 Difference]: Start difference. First operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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 94 states. [2022-02-20 23:48:40,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,550 INFO L93 Difference]: Finished difference Result 94 states and 106 transitions. [2022-02-20 23:48:40,550 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 106 transitions. [2022-02-20 23:48:40,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:40,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:40,550 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:40,550 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:40,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 75 states have (on average 1.4133333333333333) internal successors, (106), 93 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:40,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 106 transitions. [2022-02-20 23:48:40,551 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 106 transitions. Word has length 18 [2022-02-20 23:48:40,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:40,551 INFO L470 AbstractCegarLoop]: Abstraction has 94 states and 106 transitions. [2022-02-20 23:48:40,551 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 9.0) internal successors, (18), 3 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:40,552 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 106 transitions. [2022-02-20 23:48:40,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:48:40,552 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:40,552 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] [2022-02-20 23:48:40,552 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:48:40,552 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:40,553 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:40,553 INFO L85 PathProgramCache]: Analyzing trace with hash 774470346, now seen corresponding path program 1 times [2022-02-20 23:48:40,553 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:40,553 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277499243] [2022-02-20 23:48:40,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:40,553 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:40,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:40,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {3837#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(14, 2); {3837#true} is VALID [2022-02-20 23:48:40,612 INFO L290 TraceCheckUtils]: 1: Hoare triple {3837#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {3837#true} is VALID [2022-02-20 23:48:40,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {3837#true} main_#t~short4#1 := main_~c1~0#1 < 5; {3837#true} is VALID [2022-02-20 23:48:40,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {3837#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {3837#true} is VALID [2022-02-20 23:48:40,612 INFO L290 TraceCheckUtils]: 4: Hoare triple {3837#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {3837#true} is VALID [2022-02-20 23:48:40,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {3837#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {3837#true} is VALID [2022-02-20 23:48:40,613 INFO L290 TraceCheckUtils]: 6: Hoare triple {3837#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {3837#true} is VALID [2022-02-20 23:48:40,614 INFO L290 TraceCheckUtils]: 7: Hoare triple {3837#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {3837#true} is VALID [2022-02-20 23:48:40,615 INFO L290 TraceCheckUtils]: 8: Hoare triple {3837#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,617 INFO L290 TraceCheckUtils]: 10: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,631 INFO L290 TraceCheckUtils]: 11: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} main_#t~short8#1 := main_~c2~0#1 < 3; {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} is VALID [2022-02-20 23:48:40,633 INFO L290 TraceCheckUtils]: 16: Hoare triple {3839#(= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {3840#(= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1)} is VALID [2022-02-20 23:48:40,634 INFO L290 TraceCheckUtils]: 17: Hoare triple {3840#(= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {3841#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:40,635 INFO L290 TraceCheckUtils]: 18: Hoare triple {3841#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {3841#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:40,635 INFO L290 TraceCheckUtils]: 19: Hoare triple {3841#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {3842#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} is VALID [2022-02-20 23:48:40,635 INFO L290 TraceCheckUtils]: 20: Hoare triple {3842#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} assume !(1 == #valid[main_#t~mem12#1.base]); {3838#false} is VALID [2022-02-20 23:48:40,635 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:40,636 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:40,636 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277499243] [2022-02-20 23:48:40,636 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [277499243] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:40,636 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:40,636 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:48:40,636 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1669113727] [2022-02-20 23:48:40,636 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:40,636 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:40,636 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:40,636 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:40,649 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:40,650 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:48:40,650 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:40,650 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:48:40,650 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:48:40,650 INFO L87 Difference]: Start difference. First operand 94 states and 106 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:40,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:40,984 INFO L93 Difference]: Finished difference Result 168 states and 190 transitions. [2022-02-20 23:48:40,984 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:48:40,984 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:40,984 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:40,984 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:40,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 141 transitions. [2022-02-20 23:48:40,985 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:40,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 141 transitions. [2022-02-20 23:48:40,986 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 141 transitions. [2022-02-20 23:48:41,073 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:41,075 INFO L225 Difference]: With dead ends: 168 [2022-02-20 23:48:41,075 INFO L226 Difference]: Without dead ends: 168 [2022-02-20 23:48:41,075 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=51, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:41,076 INFO L933 BasicCegarLoop]: 62 mSDtfsCounter, 52 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 152 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 235 SdHoareTripleChecker+Invalid, 161 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 152 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:41,076 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 235 Invalid, 161 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 152 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:41,077 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-20 23:48:41,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 112. [2022-02-20 23:48:41,078 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:41,078 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,079 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,079 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,081 INFO L93 Difference]: Finished difference Result 168 states and 190 transitions. [2022-02-20 23:48:41,081 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 190 transitions. [2022-02-20 23:48:41,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:48:41,082 INFO L87 Difference]: Start difference. First operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:48:41,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:41,088 INFO L93 Difference]: Finished difference Result 168 states and 190 transitions. [2022-02-20 23:48:41,088 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 190 transitions. [2022-02-20 23:48:41,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:41,089 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:41,089 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:41,089 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:41,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 93 states have (on average 1.3978494623655915) internal successors, (130), 111 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:41,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 130 transitions. [2022-02-20 23:48:41,092 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 130 transitions. Word has length 21 [2022-02-20 23:48:41,093 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:41,093 INFO L470 AbstractCegarLoop]: Abstraction has 112 states and 130 transitions. [2022-02-20 23:48:41,093 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:41,093 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 130 transitions. [2022-02-20 23:48:41,093 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:48:41,093 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:41,093 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] [2022-02-20 23:48:41,094 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:48:41,094 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:41,094 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:41,094 INFO L85 PathProgramCache]: Analyzing trace with hash 774470347, now seen corresponding path program 1 times [2022-02-20 23:48:41,095 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:41,095 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [387026917] [2022-02-20 23:48:41,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:41,095 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:41,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:41,296 INFO L290 TraceCheckUtils]: 0: Hoare triple {4467#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(14, 2); {4467#true} is VALID [2022-02-20 23:48:41,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {4467#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {4467#true} is VALID [2022-02-20 23:48:41,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {4467#true} main_#t~short4#1 := main_~c1~0#1 < 5; {4467#true} is VALID [2022-02-20 23:48:41,300 INFO L290 TraceCheckUtils]: 3: Hoare triple {4467#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {4467#true} is VALID [2022-02-20 23:48:41,302 INFO L290 TraceCheckUtils]: 4: Hoare triple {4467#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {4469#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {4469#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {4469#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,303 INFO L290 TraceCheckUtils]: 6: Hoare triple {4469#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {4470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {4470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {4470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {4470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,306 INFO L290 TraceCheckUtils]: 9: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,307 INFO L290 TraceCheckUtils]: 10: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,307 INFO L290 TraceCheckUtils]: 11: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,308 INFO L290 TraceCheckUtils]: 13: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {4471#(and (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {4472#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,309 INFO L290 TraceCheckUtils]: 15: Hoare triple {4472#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {4472#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:41,310 INFO L290 TraceCheckUtils]: 16: Hoare triple {4472#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {4473#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem11#1.base|)) (= |ULTIMATE.start_main_#t~mem11#1.offset| 0))} is VALID [2022-02-20 23:48:41,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {4473#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem11#1.base|)) (= |ULTIMATE.start_main_#t~mem11#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {4474#(and (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0))} is VALID [2022-02-20 23:48:41,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {4474#(and (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {4474#(and (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0))} is VALID [2022-02-20 23:48:41,311 INFO L290 TraceCheckUtils]: 19: Hoare triple {4474#(and (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {4475#(and (= |ULTIMATE.start_main_#t~mem12#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} is VALID [2022-02-20 23:48:41,312 INFO L290 TraceCheckUtils]: 20: Hoare triple {4475#(and (= |ULTIMATE.start_main_#t~mem12#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} assume !(4 + (4 + main_#t~mem12#1.offset) <= #length[main_#t~mem12#1.base] && 0 <= 4 + main_#t~mem12#1.offset); {4468#false} is VALID [2022-02-20 23:48:41,312 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:41,312 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:41,312 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [387026917] [2022-02-20 23:48:41,312 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [387026917] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:41,312 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:41,312 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:48:41,313 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1688834932] [2022-02-20 23:48:41,313 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:41,313 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:41,313 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:41,313 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:41,335 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:41,335 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:48:41,335 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:41,335 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:48:41,335 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:48:41,335 INFO L87 Difference]: Start difference. First operand 112 states and 130 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:42,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,222 INFO L93 Difference]: Finished difference Result 198 states and 221 transitions. [2022-02-20 23:48:42,222 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:48:42,222 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:42,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:42,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:42,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 178 transitions. [2022-02-20 23:48:42,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:42,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 178 transitions. [2022-02-20 23:48:42,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 178 transitions. [2022-02-20 23:48:42,380 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:42,382 INFO L225 Difference]: With dead ends: 198 [2022-02-20 23:48:42,382 INFO L226 Difference]: Without dead ends: 198 [2022-02-20 23:48:42,382 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=79, Invalid=161, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:48:42,383 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 292 mSDsluCounter, 208 mSDsCounter, 0 mSdLazyCounter, 297 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 292 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 297 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:42,383 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [292 Valid, 246 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 297 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:48:42,383 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 198 states. [2022-02-20 23:48:42,384 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 198 to 112. [2022-02-20 23:48:42,384 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:42,385 INFO L82 GeneralOperation]: Start isEquivalent. First operand 198 states. Second operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 0 states have call 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:42,385 INFO L74 IsIncluded]: Start isIncluded. First operand 198 states. Second operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 0 states have call 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:42,385 INFO L87 Difference]: Start difference. First operand 198 states. Second operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 0 states have call 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:42,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,387 INFO L93 Difference]: Finished difference Result 198 states and 221 transitions. [2022-02-20 23:48:42,387 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 221 transitions. [2022-02-20 23:48:42,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,388 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 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 198 states. [2022-02-20 23:48:42,388 INFO L87 Difference]: Start difference. First operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 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 198 states. [2022-02-20 23:48:42,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,396 INFO L93 Difference]: Finished difference Result 198 states and 221 transitions. [2022-02-20 23:48:42,396 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 221 transitions. [2022-02-20 23:48:42,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,397 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:42,397 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:42,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 93 states have (on average 1.3763440860215055) internal successors, (128), 111 states have internal predecessors, (128), 0 states have call successors, (0), 0 states have call 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:42,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 128 transitions. [2022-02-20 23:48:42,398 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 128 transitions. Word has length 21 [2022-02-20 23:48:42,398 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:42,398 INFO L470 AbstractCegarLoop]: Abstraction has 112 states and 128 transitions. [2022-02-20 23:48:42,398 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 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:42,398 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 128 transitions. [2022-02-20 23:48:42,398 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:42,398 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:42,399 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] [2022-02-20 23:48:42,399 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:48:42,399 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:42,399 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:42,399 INFO L85 PathProgramCache]: Analyzing trace with hash -181494867, now seen corresponding path program 1 times [2022-02-20 23:48:42,399 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:42,399 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1097901495] [2022-02-20 23:48:42,399 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:42,399 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:42,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,434 INFO L290 TraceCheckUtils]: 0: Hoare triple {5199#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(14, 2); {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {5199#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {5199#true} main_#t~short4#1 := main_~c1~0#1 < 5; {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 3: Hoare triple {5199#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 4: Hoare triple {5199#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {5199#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {5199#true} is VALID [2022-02-20 23:48:42,435 INFO L290 TraceCheckUtils]: 6: Hoare triple {5199#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,437 INFO L290 TraceCheckUtils]: 10: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~c2~0#1 := 0; {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {5201#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,439 INFO L290 TraceCheckUtils]: 18: Hoare triple {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,439 INFO L290 TraceCheckUtils]: 19: Hoare triple {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:42,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {5202#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(1 == #valid[main_~first~0#1.base]); {5200#false} is VALID [2022-02-20 23:48:42,440 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:42,440 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:42,440 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1097901495] [2022-02-20 23:48:42,441 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1097901495] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:42,441 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:42,441 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:42,441 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1273743876] [2022-02-20 23:48:42,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:42,441 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:42,442 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,454 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:42,454 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:42,455 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:42,455 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:42,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:42,456 INFO L87 Difference]: Start difference. First operand 112 states and 128 transitions. Second operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,649 INFO L93 Difference]: Finished difference Result 146 states and 162 transitions. [2022-02-20 23:48:42,649 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:42,649 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,649 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:42,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 141 transitions. [2022-02-20 23:48:42,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 141 transitions. [2022-02-20 23:48:42,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 141 transitions. [2022-02-20 23:48:42,741 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:42,743 INFO L225 Difference]: With dead ends: 146 [2022-02-20 23:48:42,743 INFO L226 Difference]: Without dead ends: 146 [2022-02-20 23:48:42,743 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:42,743 INFO L933 BasicCegarLoop]: 54 mSDtfsCounter, 95 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 95 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 105 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:42,743 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [95 Valid, 112 Invalid, 105 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:42,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-02-20 23:48:42,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 114. [2022-02-20 23:48:42,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:42,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call 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:42,746 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call 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:42,746 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call 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:42,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,747 INFO L93 Difference]: Finished difference Result 146 states and 162 transitions. [2022-02-20 23:48:42,747 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 162 transitions. [2022-02-20 23:48:42,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,748 INFO L74 IsIncluded]: Start isIncluded. First operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 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 146 states. [2022-02-20 23:48:42,748 INFO L87 Difference]: Start difference. First operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 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 146 states. [2022-02-20 23:48:42,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:42,749 INFO L93 Difference]: Finished difference Result 146 states and 162 transitions. [2022-02-20 23:48:42,749 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 162 transitions. [2022-02-20 23:48:42,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:42,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:42,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:42,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:42,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 114 states, 95 states have (on average 1.3894736842105264) internal successors, (132), 113 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call 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:42,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 132 transitions. [2022-02-20 23:48:42,751 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 132 transitions. Word has length 22 [2022-02-20 23:48:42,751 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:42,751 INFO L470 AbstractCegarLoop]: Abstraction has 114 states and 132 transitions. [2022-02-20 23:48:42,751 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,751 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 132 transitions. [2022-02-20 23:48:42,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:48:42,751 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:42,751 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] [2022-02-20 23:48:42,752 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 23:48:42,756 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr29REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:42,757 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:42,757 INFO L85 PathProgramCache]: Analyzing trace with hash -181494866, now seen corresponding path program 1 times [2022-02-20 23:48:42,757 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:42,757 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1451244999] [2022-02-20 23:48:42,757 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:42,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:42,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:42,816 INFO L290 TraceCheckUtils]: 0: Hoare triple {5760#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(14, 2); {5760#true} is VALID [2022-02-20 23:48:42,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {5760#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {5760#true} is VALID [2022-02-20 23:48:42,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {5760#true} main_#t~short4#1 := main_~c1~0#1 < 5; {5760#true} is VALID [2022-02-20 23:48:42,816 INFO L290 TraceCheckUtils]: 3: Hoare triple {5760#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {5760#true} is VALID [2022-02-20 23:48:42,817 INFO L290 TraceCheckUtils]: 4: Hoare triple {5760#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,817 INFO L290 TraceCheckUtils]: 5: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,818 INFO L290 TraceCheckUtils]: 6: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,820 INFO L290 TraceCheckUtils]: 10: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,820 INFO L290 TraceCheckUtils]: 11: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,821 INFO L290 TraceCheckUtils]: 12: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,821 INFO L290 TraceCheckUtils]: 13: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,821 INFO L290 TraceCheckUtils]: 14: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,822 INFO L290 TraceCheckUtils]: 15: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~c2~0#1 := 0; {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:42,822 INFO L290 TraceCheckUtils]: 16: Hoare triple {5762#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:42,822 INFO L290 TraceCheckUtils]: 17: Hoare triple {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:42,823 INFO L290 TraceCheckUtils]: 18: Hoare triple {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:42,823 INFO L290 TraceCheckUtils]: 19: Hoare triple {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:42,824 INFO L290 TraceCheckUtils]: 20: Hoare triple {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:42,824 INFO L290 TraceCheckUtils]: 21: Hoare triple {5763#(and (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(4 + (12 + main_~first~0#1.offset) <= #length[main_~first~0#1.base] && 0 <= 12 + main_~first~0#1.offset); {5761#false} is VALID [2022-02-20 23:48:42,824 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:42,824 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:42,824 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1451244999] [2022-02-20 23:48:42,825 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1451244999] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:42,825 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:42,825 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:48:42,825 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [345050370] [2022-02-20 23:48:42,825 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:42,825 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,825 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:42,825 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:42,839 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:42,839 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:42,839 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:42,839 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:42,839 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:48:42,840 INFO L87 Difference]: Start difference. First operand 114 states and 132 transitions. Second operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:43,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,073 INFO L93 Difference]: Finished difference Result 187 states and 217 transitions. [2022-02-20 23:48:43,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:43,073 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:43,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:43,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:43,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 160 transitions. [2022-02-20 23:48:43,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:43,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 160 transitions. [2022-02-20 23:48:43,075 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 160 transitions. [2022-02-20 23:48:43,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 160 edges. 160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:43,181 INFO L225 Difference]: With dead ends: 187 [2022-02-20 23:48:43,181 INFO L226 Difference]: Without dead ends: 187 [2022-02-20 23:48:43,181 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:43,181 INFO L933 BasicCegarLoop]: 62 mSDtfsCounter, 86 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 97 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 97 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:43,181 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 151 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 97 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:43,182 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2022-02-20 23:48:43,183 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 138. [2022-02-20 23:48:43,183 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:43,183 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call 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:43,184 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call 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:43,184 INFO L87 Difference]: Start difference. First operand 187 states. Second operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call 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:43,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,186 INFO L93 Difference]: Finished difference Result 187 states and 217 transitions. [2022-02-20 23:48:43,186 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 217 transitions. [2022-02-20 23:48:43,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:43,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:43,186 INFO L74 IsIncluded]: Start isIncluded. First operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 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 187 states. [2022-02-20 23:48:43,186 INFO L87 Difference]: Start difference. First operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 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 187 states. [2022-02-20 23:48:43,197 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,198 INFO L93 Difference]: Finished difference Result 187 states and 217 transitions. [2022-02-20 23:48:43,198 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 217 transitions. [2022-02-20 23:48:43,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:43,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:43,198 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:43,198 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:43,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 138 states, 119 states have (on average 1.3865546218487395) internal successors, (165), 137 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call 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:43,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 165 transitions. [2022-02-20 23:48:43,200 INFO L78 Accepts]: Start accepts. Automaton has 138 states and 165 transitions. Word has length 22 [2022-02-20 23:48:43,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:43,200 INFO L470 AbstractCegarLoop]: Abstraction has 138 states and 165 transitions. [2022-02-20 23:48:43,200 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 7.333333333333333) internal successors, (22), 4 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:43,200 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 165 transitions. [2022-02-20 23:48:43,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:48:43,201 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:43,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, 1, 1] [2022-02-20 23:48:43,201 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 23:48:43,201 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr42ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:43,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:43,204 INFO L85 PathProgramCache]: Analyzing trace with hash -1331373881, now seen corresponding path program 1 times [2022-02-20 23:48:43,204 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:43,204 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2027025169] [2022-02-20 23:48:43,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:43,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:43,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:43,249 INFO L290 TraceCheckUtils]: 0: Hoare triple {6468#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(14, 2); {6468#true} is VALID [2022-02-20 23:48:43,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {6468#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:43,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:43,250 INFO L290 TraceCheckUtils]: 3: Hoare triple {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:43,251 INFO L290 TraceCheckUtils]: 4: Hoare triple {6470#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,251 INFO L290 TraceCheckUtils]: 6: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,252 INFO L290 TraceCheckUtils]: 7: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,252 INFO L290 TraceCheckUtils]: 10: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,253 INFO L290 TraceCheckUtils]: 11: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,253 INFO L290 TraceCheckUtils]: 12: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_#t~short8#1 := main_~c2~0#1 < 3; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,255 INFO L290 TraceCheckUtils]: 13: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,256 INFO L290 TraceCheckUtils]: 14: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,257 INFO L290 TraceCheckUtils]: 15: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_~c2~0#1 := 0; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,257 INFO L290 TraceCheckUtils]: 18: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,258 INFO L290 TraceCheckUtils]: 19: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,258 INFO L290 TraceCheckUtils]: 20: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !(main_~c1~0#1 > 0); {6469#false} is VALID [2022-02-20 23:48:43,258 INFO L290 TraceCheckUtils]: 21: Hoare triple {6469#false} main_#res#1 := 0; {6469#false} is VALID [2022-02-20 23:48:43,258 INFO L290 TraceCheckUtils]: 22: Hoare triple {6469#false} assume !(#valid == main_old_#valid#1); {6469#false} is VALID [2022-02-20 23:48:43,258 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:43,258 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:43,258 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2027025169] [2022-02-20 23:48:43,258 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2027025169] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:43,259 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1433919708] [2022-02-20 23:48:43,259 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:43,259 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:43,259 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:43,260 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:43,263 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:43,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:43,332 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:48:43,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:43,354 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:43,507 INFO L290 TraceCheckUtils]: 0: Hoare triple {6468#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(14, 2); {6468#true} is VALID [2022-02-20 23:48:43,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {6468#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,509 INFO L290 TraceCheckUtils]: 3: Hoare triple {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,510 INFO L290 TraceCheckUtils]: 4: Hoare triple {6478#(<= 0 |ULTIMATE.start_main_~c1~0#1|)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,512 INFO L290 TraceCheckUtils]: 10: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,513 INFO L290 TraceCheckUtils]: 11: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_#t~short8#1 := main_~c2~0#1 < 3; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,513 INFO L290 TraceCheckUtils]: 13: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,514 INFO L290 TraceCheckUtils]: 15: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_~c2~0#1 := 0; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,515 INFO L290 TraceCheckUtils]: 17: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,516 INFO L290 TraceCheckUtils]: 18: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,516 INFO L290 TraceCheckUtils]: 19: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} is VALID [2022-02-20 23:48:43,516 INFO L290 TraceCheckUtils]: 20: Hoare triple {6471#(<= 1 |ULTIMATE.start_main_~c1~0#1|)} assume !(main_~c1~0#1 > 0); {6469#false} is VALID [2022-02-20 23:48:43,516 INFO L290 TraceCheckUtils]: 21: Hoare triple {6469#false} main_#res#1 := 0; {6469#false} is VALID [2022-02-20 23:48:43,517 INFO L290 TraceCheckUtils]: 22: Hoare triple {6469#false} assume !(#valid == main_old_#valid#1); {6469#false} is VALID [2022-02-20 23:48:43,517 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:43,518 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:48:43,518 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1433919708] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:43,518 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:48:43,518 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [4] total 5 [2022-02-20 23:48:43,518 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1790440364] [2022-02-20 23:48:43,518 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:43,519 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 23:48:43,519 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:43,519 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:43,537 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:48:43,537 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:43,537 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:48:43,537 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:43,541 INFO L87 Difference]: Start difference. First operand 138 states and 165 transitions. Second operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,635 INFO L93 Difference]: Finished difference Result 138 states and 163 transitions. [2022-02-20 23:48:43,635 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:48:43,635 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 23:48:43,636 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:43,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 81 transitions. [2022-02-20 23:48:43,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 81 transitions. [2022-02-20 23:48:43,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 81 transitions. [2022-02-20 23:48:43,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:43,710 INFO L225 Difference]: With dead ends: 138 [2022-02-20 23:48:43,710 INFO L226 Difference]: Without dead ends: 138 [2022-02-20 23:48:43,711 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 23 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:43,711 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 70 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 15 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:43,711 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 108 Invalid, 15 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:43,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2022-02-20 23:48:43,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 138. [2022-02-20 23:48:43,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:43,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,715 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,715 INFO L87 Difference]: Start difference. First operand 138 states. Second operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,718 INFO L93 Difference]: Finished difference Result 138 states and 163 transitions. [2022-02-20 23:48:43,718 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 163 transitions. [2022-02-20 23:48:43,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:43,718 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:43,719 INFO L74 IsIncluded]: Start isIncluded. First operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 138 states. [2022-02-20 23:48:43,719 INFO L87 Difference]: Start difference. First operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 138 states. [2022-02-20 23:48:43,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:43,721 INFO L93 Difference]: Finished difference Result 138 states and 163 transitions. [2022-02-20 23:48:43,722 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 163 transitions. [2022-02-20 23:48:43,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:43,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:43,722 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:43,722 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:43,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 138 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 137 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 163 transitions. [2022-02-20 23:48:43,725 INFO L78 Accepts]: Start accepts. Automaton has 138 states and 163 transitions. Word has length 23 [2022-02-20 23:48:43,725 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:43,725 INFO L470 AbstractCegarLoop]: Abstraction has 138 states and 163 transitions. [2022-02-20 23:48:43,725 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:43,725 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 163 transitions. [2022-02-20 23:48:43,726 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:48:43,726 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:43,726 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] [2022-02-20 23:48:43,748 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:43,943 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,SelfDestructingSolverStorable13 [2022-02-20 23:48:43,943 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr30REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:43,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:43,944 INFO L85 PathProgramCache]: Analyzing trace with hash 1677094766, now seen corresponding path program 1 times [2022-02-20 23:48:43,944 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:43,944 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [462875498] [2022-02-20 23:48:43,944 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:43,944 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:43,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:43,990 INFO L290 TraceCheckUtils]: 0: Hoare triple {7093#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(14, 2); {7093#true} is VALID [2022-02-20 23:48:43,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {7093#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {7093#true} is VALID [2022-02-20 23:48:43,990 INFO L290 TraceCheckUtils]: 2: Hoare triple {7093#true} main_#t~short4#1 := main_~c1~0#1 < 5; {7093#true} is VALID [2022-02-20 23:48:43,994 INFO L290 TraceCheckUtils]: 3: Hoare triple {7093#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {7093#true} is VALID [2022-02-20 23:48:43,995 INFO L290 TraceCheckUtils]: 4: Hoare triple {7093#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {7093#true} is VALID [2022-02-20 23:48:43,995 INFO L290 TraceCheckUtils]: 5: Hoare triple {7093#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {7093#true} is VALID [2022-02-20 23:48:43,995 INFO L290 TraceCheckUtils]: 6: Hoare triple {7093#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,996 INFO L290 TraceCheckUtils]: 7: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,996 INFO L290 TraceCheckUtils]: 8: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,997 INFO L290 TraceCheckUtils]: 9: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,998 INFO L290 TraceCheckUtils]: 10: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,998 INFO L290 TraceCheckUtils]: 11: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,998 INFO L290 TraceCheckUtils]: 12: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,998 INFO L290 TraceCheckUtils]: 13: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:43,999 INFO L290 TraceCheckUtils]: 14: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,000 INFO L290 TraceCheckUtils]: 15: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~c2~0#1 := 0; {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,000 INFO L290 TraceCheckUtils]: 16: Hoare triple {7095#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,000 INFO L290 TraceCheckUtils]: 17: Hoare triple {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,001 INFO L290 TraceCheckUtils]: 18: Hoare triple {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,002 INFO L290 TraceCheckUtils]: 19: Hoare triple {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:48:44,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {7096#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} is VALID [2022-02-20 23:48:44,002 INFO L290 TraceCheckUtils]: 21: Hoare triple {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} is VALID [2022-02-20 23:48:44,003 INFO L290 TraceCheckUtils]: 22: Hoare triple {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} is VALID [2022-02-20 23:48:44,003 INFO L290 TraceCheckUtils]: 23: Hoare triple {7097#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} assume !(1 == #valid[main_~x~1#1.base]); {7094#false} is VALID [2022-02-20 23:48:44,003 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:44,004 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:44,004 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [462875498] [2022-02-20 23:48:44,004 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [462875498] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:44,004 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:44,004 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:44,004 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2016102416] [2022-02-20 23:48:44,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:44,006 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:44,006 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:44,006 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:44,023 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:44,023 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:44,023 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:44,023 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:44,023 INFO L87 Difference]: Start difference. First operand 138 states and 163 transitions. Second operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,384 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:44,384 INFO L93 Difference]: Finished difference Result 185 states and 211 transitions. [2022-02-20 23:48:44,384 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:48:44,384 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:44,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:44,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 160 transitions. [2022-02-20 23:48:44,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 160 transitions. [2022-02-20 23:48:44,386 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 160 transitions. [2022-02-20 23:48:44,494 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 160 edges. 160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:44,498 INFO L225 Difference]: With dead ends: 185 [2022-02-20 23:48:44,498 INFO L226 Difference]: Without dead ends: 185 [2022-02-20 23:48:44,498 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 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:44,498 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 133 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 175 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 133 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 183 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 175 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:44,498 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [133 Valid, 162 Invalid, 183 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 175 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:44,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-02-20 23:48:44,500 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 148. [2022-02-20 23:48:44,500 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:44,500 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call 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:44,501 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call 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:44,501 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call 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:44,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:44,503 INFO L93 Difference]: Finished difference Result 185 states and 211 transitions. [2022-02-20 23:48:44,503 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 211 transitions. [2022-02-20 23:48:44,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:44,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:44,503 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 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:44,503 INFO L87 Difference]: Start difference. First operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 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:44,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:44,506 INFO L93 Difference]: Finished difference Result 185 states and 211 transitions. [2022-02-20 23:48:44,506 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 211 transitions. [2022-02-20 23:48:44,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:44,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:44,507 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:44,507 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:44,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 129 states have (on average 1.4108527131782946) internal successors, (182), 147 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call 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:44,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 182 transitions. [2022-02-20 23:48:44,508 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 182 transitions. Word has length 24 [2022-02-20 23:48:44,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:44,508 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 182 transitions. [2022-02-20 23:48:44,508 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,508 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 182 transitions. [2022-02-20 23:48:44,509 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:48:44,509 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:44,509 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] [2022-02-20 23:48:44,509 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:48:44,509 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:44,509 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:44,509 INFO L85 PathProgramCache]: Analyzing trace with hash 1677094767, now seen corresponding path program 1 times [2022-02-20 23:48:44,509 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:44,509 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [374565891] [2022-02-20 23:48:44,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:44,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:44,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:44,552 INFO L290 TraceCheckUtils]: 0: Hoare triple {7810#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(14, 2); {7810#true} is VALID [2022-02-20 23:48:44,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {7810#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {7810#true} is VALID [2022-02-20 23:48:44,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {7810#true} main_#t~short4#1 := main_~c1~0#1 < 5; {7810#true} is VALID [2022-02-20 23:48:44,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {7810#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {7810#true} is VALID [2022-02-20 23:48:44,554 INFO L290 TraceCheckUtils]: 4: Hoare triple {7810#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,554 INFO L290 TraceCheckUtils]: 5: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,554 INFO L290 TraceCheckUtils]: 6: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,555 INFO L290 TraceCheckUtils]: 7: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,555 INFO L290 TraceCheckUtils]: 8: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,556 INFO L290 TraceCheckUtils]: 10: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,557 INFO L290 TraceCheckUtils]: 13: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~c2~0#1 := 0; {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:44,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {7812#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:44,559 INFO L290 TraceCheckUtils]: 17: Hoare triple {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:44,559 INFO L290 TraceCheckUtils]: 18: Hoare triple {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:44,559 INFO L290 TraceCheckUtils]: 19: Hoare triple {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:48:44,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {7813#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} is VALID [2022-02-20 23:48:44,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} is VALID [2022-02-20 23:48:44,561 INFO L290 TraceCheckUtils]: 22: Hoare triple {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} is VALID [2022-02-20 23:48:44,561 INFO L290 TraceCheckUtils]: 23: Hoare triple {7814#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (+ (- 20) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) 0))} assume !(4 + main_~x~1#1.offset <= #length[main_~x~1#1.base] && 0 <= main_~x~1#1.offset); {7811#false} is VALID [2022-02-20 23:48:44,561 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:44,561 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:44,561 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [374565891] [2022-02-20 23:48:44,561 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [374565891] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:44,561 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:44,561 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:44,561 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1074863963] [2022-02-20 23:48:44,562 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:44,562 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:44,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:44,562 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,577 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:44,578 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:44,578 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:44,578 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:44,578 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:44,578 INFO L87 Difference]: Start difference. First operand 148 states and 182 transitions. Second operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:44,941 INFO L93 Difference]: Finished difference Result 238 states and 293 transitions. [2022-02-20 23:48:44,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:44,941 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 23:48:44,941 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:44,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 186 transitions. [2022-02-20 23:48:44,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:44,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 186 transitions. [2022-02-20 23:48:44,943 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 186 transitions. [2022-02-20 23:48:45,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 186 edges. 186 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:45,056 INFO L225 Difference]: With dead ends: 238 [2022-02-20 23:48:45,056 INFO L226 Difference]: Without dead ends: 238 [2022-02-20 23:48:45,056 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 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:45,057 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 136 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 162 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 136 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 162 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:45,057 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [136 Valid, 180 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 162 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:45,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 238 states. [2022-02-20 23:48:45,059 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 238 to 166. [2022-02-20 23:48:45,059 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:45,059 INFO L82 GeneralOperation]: Start isEquivalent. First operand 238 states. Second operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 0 states have call 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:45,059 INFO L74 IsIncluded]: Start isIncluded. First operand 238 states. Second operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 0 states have call 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:45,060 INFO L87 Difference]: Start difference. First operand 238 states. Second operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 0 states have call 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:45,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,062 INFO L93 Difference]: Finished difference Result 238 states and 293 transitions. [2022-02-20 23:48:45,062 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 293 transitions. [2022-02-20 23:48:45,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:45,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:45,063 INFO L74 IsIncluded]: Start isIncluded. First operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 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 238 states. [2022-02-20 23:48:45,063 INFO L87 Difference]: Start difference. First operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 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 238 states. [2022-02-20 23:48:45,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,066 INFO L93 Difference]: Finished difference Result 238 states and 293 transitions. [2022-02-20 23:48:45,066 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 293 transitions. [2022-02-20 23:48:45,066 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:45,066 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:45,066 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:45,067 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:45,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 166 states, 147 states have (on average 1.4625850340136055) internal successors, (215), 165 states have internal predecessors, (215), 0 states have call successors, (0), 0 states have call 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:45,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 166 states to 166 states and 215 transitions. [2022-02-20 23:48:45,068 INFO L78 Accepts]: Start accepts. Automaton has 166 states and 215 transitions. Word has length 24 [2022-02-20 23:48:45,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:45,068 INFO L470 AbstractCegarLoop]: Abstraction has 166 states and 215 transitions. [2022-02-20 23:48:45,068 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.0) internal successors, (24), 5 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,069 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 215 transitions. [2022-02-20 23:48:45,069 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:48:45,069 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:45,069 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] [2022-02-20 23:48:45,069 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:48:45,069 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:45,069 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:45,069 INFO L85 PathProgramCache]: Analyzing trace with hash -1024288817, now seen corresponding path program 1 times [2022-02-20 23:48:45,069 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:45,069 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [495985781] [2022-02-20 23:48:45,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:45,069 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:45,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:45,170 INFO L290 TraceCheckUtils]: 0: Hoare triple {8704#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(14, 2); {8704#true} is VALID [2022-02-20 23:48:45,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {8704#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {8704#true} is VALID [2022-02-20 23:48:45,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {8704#true} main_#t~short4#1 := main_~c1~0#1 < 5; {8704#true} is VALID [2022-02-20 23:48:45,170 INFO L290 TraceCheckUtils]: 3: Hoare triple {8704#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {8704#true} is VALID [2022-02-20 23:48:45,170 INFO L290 TraceCheckUtils]: 4: Hoare triple {8704#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {8704#true} is VALID [2022-02-20 23:48:45,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {8704#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {8704#true} is VALID [2022-02-20 23:48:45,171 INFO L290 TraceCheckUtils]: 6: Hoare triple {8704#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {8704#true} is VALID [2022-02-20 23:48:45,171 INFO L290 TraceCheckUtils]: 7: Hoare triple {8704#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {8704#true} is VALID [2022-02-20 23:48:45,172 INFO L290 TraceCheckUtils]: 8: Hoare triple {8704#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,173 INFO L290 TraceCheckUtils]: 10: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,174 INFO L290 TraceCheckUtils]: 11: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,175 INFO L290 TraceCheckUtils]: 13: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,175 INFO L290 TraceCheckUtils]: 14: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~c2~0#1 := 0; {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:48:45,176 INFO L290 TraceCheckUtils]: 16: Hoare triple {8706#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:48:45,176 INFO L290 TraceCheckUtils]: 17: Hoare triple {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} main_#t~short4#1 := main_~c1~0#1 < 5; {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:48:45,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:48:45,177 INFO L290 TraceCheckUtils]: 19: Hoare triple {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:48:45,178 INFO L290 TraceCheckUtils]: 20: Hoare triple {8707#(and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:48:45,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:48:45,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:48:45,180 INFO L290 TraceCheckUtils]: 23: Hoare triple {8708#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {8709#(and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_#t~mem15#1.offset|))} is VALID [2022-02-20 23:48:45,180 INFO L290 TraceCheckUtils]: 24: Hoare triple {8709#(and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_#t~mem15#1.offset|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {8710#(and (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:48:45,180 INFO L290 TraceCheckUtils]: 25: Hoare triple {8710#(and (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {8705#false} is VALID [2022-02-20 23:48:45,180 INFO L290 TraceCheckUtils]: 26: Hoare triple {8705#false} assume !(1 == #valid[main_~y~1#1.base]); {8705#false} is VALID [2022-02-20 23:48:45,181 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:45,181 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:45,181 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [495985781] [2022-02-20 23:48:45,181 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [495985781] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:45,181 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:45,181 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:48:45,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1517257288] [2022-02-20 23:48:45,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:45,182 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:48:45,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:45,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,199 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:45,199 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:48:45,199 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:45,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:48:45,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:45,200 INFO L87 Difference]: Start difference. First operand 166 states and 215 transitions. Second operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,667 INFO L93 Difference]: Finished difference Result 238 states and 303 transitions. [2022-02-20 23:48:45,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:48:45,667 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:48:45,667 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:45,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-02-20 23:48:45,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-02-20 23:48:45,669 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-02-20 23:48:45,775 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:45,778 INFO L225 Difference]: With dead ends: 238 [2022-02-20 23:48:45,778 INFO L226 Difference]: Without dead ends: 238 [2022-02-20 23:48:45,778 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=43, Invalid=113, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:48:45,778 INFO L933 BasicCegarLoop]: 61 mSDtfsCounter, 106 mSDsluCounter, 249 mSDsCounter, 0 mSdLazyCounter, 163 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 169 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 163 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:45,779 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [106 Valid, 310 Invalid, 169 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 163 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:45,779 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 238 states. [2022-02-20 23:48:45,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 238 to 175. [2022-02-20 23:48:45,781 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:45,781 INFO L82 GeneralOperation]: Start isEquivalent. First operand 238 states. Second operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 0 states have call 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:45,781 INFO L74 IsIncluded]: Start isIncluded. First operand 238 states. Second operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 0 states have call 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:45,782 INFO L87 Difference]: Start difference. First operand 238 states. Second operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 0 states have call 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:45,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,784 INFO L93 Difference]: Finished difference Result 238 states and 303 transitions. [2022-02-20 23:48:45,784 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 303 transitions. [2022-02-20 23:48:45,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:45,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:45,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 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 238 states. [2022-02-20 23:48:45,785 INFO L87 Difference]: Start difference. First operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 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 238 states. [2022-02-20 23:48:45,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:45,790 INFO L93 Difference]: Finished difference Result 238 states and 303 transitions. [2022-02-20 23:48:45,790 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 303 transitions. [2022-02-20 23:48:45,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:45,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:45,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:45,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:45,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 156 states have (on average 1.4487179487179487) internal successors, (226), 174 states have internal predecessors, (226), 0 states have call successors, (0), 0 states have call 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:45,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 226 transitions. [2022-02-20 23:48:45,792 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 226 transitions. Word has length 27 [2022-02-20 23:48:45,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:45,793 INFO L470 AbstractCegarLoop]: Abstraction has 175 states and 226 transitions. [2022-02-20 23:48:45,793 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 7 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:45,793 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 226 transitions. [2022-02-20 23:48:45,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:48:45,793 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:45,793 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] [2022-02-20 23:48:45,793 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:48:45,793 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:45,793 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:45,793 INFO L85 PathProgramCache]: Analyzing trace with hash -1688183339, now seen corresponding path program 1 times [2022-02-20 23:48:45,793 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:45,793 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1324126906] [2022-02-20 23:48:45,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:45,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:45,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:45,843 INFO L290 TraceCheckUtils]: 0: Hoare triple {9615#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(14, 2); {9615#true} is VALID [2022-02-20 23:48:45,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {9615#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {9615#true} is VALID [2022-02-20 23:48:45,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {9615#true} main_#t~short4#1 := main_~c1~0#1 < 5; {9615#true} is VALID [2022-02-20 23:48:45,843 INFO L290 TraceCheckUtils]: 3: Hoare triple {9615#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {9615#true} is VALID [2022-02-20 23:48:45,844 INFO L290 TraceCheckUtils]: 4: Hoare triple {9615#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,845 INFO L290 TraceCheckUtils]: 6: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,845 INFO L290 TraceCheckUtils]: 7: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,847 INFO L290 TraceCheckUtils]: 10: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,847 INFO L290 TraceCheckUtils]: 11: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,847 INFO L290 TraceCheckUtils]: 12: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} main_#t~short8#1 := main_~c2~0#1 < 3; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,848 INFO L290 TraceCheckUtils]: 13: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,848 INFO L290 TraceCheckUtils]: 14: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,848 INFO L290 TraceCheckUtils]: 15: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} main_~c2~0#1 := 0; {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,849 INFO L290 TraceCheckUtils]: 16: Hoare triple {9617#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,849 INFO L290 TraceCheckUtils]: 17: Hoare triple {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} main_#t~short4#1 := main_~c1~0#1 < 5; {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,849 INFO L290 TraceCheckUtils]: 18: Hoare triple {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,849 INFO L290 TraceCheckUtils]: 19: Hoare triple {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,850 INFO L290 TraceCheckUtils]: 20: Hoare triple {9618#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,850 INFO L290 TraceCheckUtils]: 21: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,850 INFO L290 TraceCheckUtils]: 22: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,851 INFO L290 TraceCheckUtils]: 23: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,851 INFO L290 TraceCheckUtils]: 24: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,851 INFO L290 TraceCheckUtils]: 25: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,852 INFO L290 TraceCheckUtils]: 26: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} assume 0 == main_~x~1#1.offset; {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:48:45,853 INFO L290 TraceCheckUtils]: 27: Hoare triple {9619#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} assume !(main_~x~1#1.base < #StackHeapBarrier); {9616#false} is VALID [2022-02-20 23:48:45,853 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:45,853 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:45,853 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1324126906] [2022-02-20 23:48:45,853 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1324126906] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:48:45,853 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:48:45,853 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:48:45,853 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [844553764] [2022-02-20 23:48:45,853 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:48:45,854 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 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 28 [2022-02-20 23:48:45,854 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:45,854 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call 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:45,876 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:45,876 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:45,876 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:45,876 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:45,876 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:45,876 INFO L87 Difference]: Start difference. First operand 175 states and 226 transitions. Second operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call 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:46,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,236 INFO L93 Difference]: Finished difference Result 205 states and 261 transitions. [2022-02-20 23:48:46,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:46,236 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 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 28 [2022-02-20 23:48:46,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:46,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call 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:46,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 134 transitions. [2022-02-20 23:48:46,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call 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:46,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 134 transitions. [2022-02-20 23:48:46,237 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 134 transitions. [2022-02-20 23:48:46,346 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:46,348 INFO L225 Difference]: With dead ends: 205 [2022-02-20 23:48:46,348 INFO L226 Difference]: Without dead ends: 205 [2022-02-20 23:48:46,349 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 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:46,349 INFO L933 BasicCegarLoop]: 84 mSDtfsCounter, 130 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 113 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 130 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 113 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:46,349 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [130 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 113 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:48:46,349 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states. [2022-02-20 23:48:46,351 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 193. [2022-02-20 23:48:46,351 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:46,351 INFO L82 GeneralOperation]: Start isEquivalent. First operand 205 states. Second operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call 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:46,352 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call 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:46,352 INFO L87 Difference]: Start difference. First operand 205 states. Second operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call 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:46,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,354 INFO L93 Difference]: Finished difference Result 205 states and 261 transitions. [2022-02-20 23:48:46,354 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 261 transitions. [2022-02-20 23:48:46,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:46,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:46,355 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 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 205 states. [2022-02-20 23:48:46,355 INFO L87 Difference]: Start difference. First operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 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 205 states. [2022-02-20 23:48:46,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,357 INFO L93 Difference]: Finished difference Result 205 states and 261 transitions. [2022-02-20 23:48:46,357 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 261 transitions. [2022-02-20 23:48:46,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:46,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:46,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:46,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:46,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 174 states have (on average 1.5) internal successors, (261), 192 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call 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:46,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 261 transitions. [2022-02-20 23:48:46,376 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 261 transitions. Word has length 28 [2022-02-20 23:48:46,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:46,376 INFO L470 AbstractCegarLoop]: Abstraction has 193 states and 261 transitions. [2022-02-20 23:48:46,376 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call 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:46,376 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 261 transitions. [2022-02-20 23:48:46,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:48:46,376 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:46,376 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:46,376 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:48:46,376 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:46,377 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:46,377 INFO L85 PathProgramCache]: Analyzing trace with hash 1397370251, now seen corresponding path program 1 times [2022-02-20 23:48:46,377 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:46,377 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1440231697] [2022-02-20 23:48:46,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:46,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:46,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,412 INFO L290 TraceCheckUtils]: 0: Hoare triple {10437#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(14, 2); {10437#true} is VALID [2022-02-20 23:48:46,415 INFO L290 TraceCheckUtils]: 1: Hoare triple {10437#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,415 INFO L290 TraceCheckUtils]: 3: Hoare triple {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,416 INFO L290 TraceCheckUtils]: 4: Hoare triple {10439#(= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,416 INFO L290 TraceCheckUtils]: 5: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,416 INFO L290 TraceCheckUtils]: 6: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,417 INFO L290 TraceCheckUtils]: 9: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,417 INFO L290 TraceCheckUtils]: 10: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,417 INFO L290 TraceCheckUtils]: 11: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,418 INFO L290 TraceCheckUtils]: 12: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,418 INFO L290 TraceCheckUtils]: 13: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,418 INFO L290 TraceCheckUtils]: 14: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,418 INFO L290 TraceCheckUtils]: 15: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~c2~0#1 := 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,418 INFO L290 TraceCheckUtils]: 16: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,419 INFO L290 TraceCheckUtils]: 17: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,419 INFO L290 TraceCheckUtils]: 18: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,419 INFO L290 TraceCheckUtils]: 19: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,420 INFO L290 TraceCheckUtils]: 20: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,420 INFO L290 TraceCheckUtils]: 21: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,420 INFO L290 TraceCheckUtils]: 22: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,421 INFO L290 TraceCheckUtils]: 23: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,421 INFO L290 TraceCheckUtils]: 24: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,421 INFO L290 TraceCheckUtils]: 25: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,421 INFO L290 TraceCheckUtils]: 26: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,422 INFO L290 TraceCheckUtils]: 27: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_~x~1#1.base < #StackHeapBarrier; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,423 INFO L290 TraceCheckUtils]: 28: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,423 INFO L290 TraceCheckUtils]: 29: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10438#false} is VALID [2022-02-20 23:48:46,423 INFO L290 TraceCheckUtils]: 30: Hoare triple {10438#false} assume !(1 == #valid[main_~first~0#1.base]); {10438#false} is VALID [2022-02-20 23:48:46,423 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:46,423 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:46,423 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1440231697] [2022-02-20 23:48:46,423 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1440231697] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:46,423 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1128547647] [2022-02-20 23:48:46,424 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:46,424 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:46,424 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:46,425 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:46,426 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:46,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,506 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:48:46,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:46,517 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:46,645 INFO L290 TraceCheckUtils]: 0: Hoare triple {10437#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(14, 2); {10437#true} is VALID [2022-02-20 23:48:46,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {10437#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,652 INFO L290 TraceCheckUtils]: 2: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,652 INFO L290 TraceCheckUtils]: 3: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,653 INFO L290 TraceCheckUtils]: 4: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,654 INFO L290 TraceCheckUtils]: 5: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,654 INFO L290 TraceCheckUtils]: 6: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,655 INFO L290 TraceCheckUtils]: 7: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,655 INFO L290 TraceCheckUtils]: 8: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,655 INFO L290 TraceCheckUtils]: 10: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,656 INFO L290 TraceCheckUtils]: 11: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,659 INFO L290 TraceCheckUtils]: 12: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,660 INFO L290 TraceCheckUtils]: 15: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~c2~0#1 := 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,660 INFO L290 TraceCheckUtils]: 16: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,660 INFO L290 TraceCheckUtils]: 17: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,660 INFO L290 TraceCheckUtils]: 18: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,661 INFO L290 TraceCheckUtils]: 19: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,662 INFO L290 TraceCheckUtils]: 21: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,662 INFO L290 TraceCheckUtils]: 22: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,663 INFO L290 TraceCheckUtils]: 24: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,663 INFO L290 TraceCheckUtils]: 26: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,664 INFO L290 TraceCheckUtils]: 27: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_~x~1#1.base < #StackHeapBarrier; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,664 INFO L290 TraceCheckUtils]: 29: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10438#false} is VALID [2022-02-20 23:48:46,664 INFO L290 TraceCheckUtils]: 30: Hoare triple {10438#false} assume !(1 == #valid[main_~first~0#1.base]); {10438#false} is VALID [2022-02-20 23:48:46,665 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:46,665 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:46,809 INFO L290 TraceCheckUtils]: 30: Hoare triple {10438#false} assume !(1 == #valid[main_~first~0#1.base]); {10438#false} is VALID [2022-02-20 23:48:46,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10438#false} is VALID [2022-02-20 23:48:46,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,810 INFO L290 TraceCheckUtils]: 27: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_~x~1#1.base < #StackHeapBarrier; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,811 INFO L290 TraceCheckUtils]: 26: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume 0 == main_~x~1#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,811 INFO L290 TraceCheckUtils]: 24: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,815 INFO L290 TraceCheckUtils]: 22: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,815 INFO L290 TraceCheckUtils]: 21: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,816 INFO L290 TraceCheckUtils]: 20: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,816 INFO L290 TraceCheckUtils]: 19: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,816 INFO L290 TraceCheckUtils]: 18: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,817 INFO L290 TraceCheckUtils]: 17: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,817 INFO L290 TraceCheckUtils]: 16: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~c2~0#1 := 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,818 INFO L290 TraceCheckUtils]: 12: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,818 INFO L290 TraceCheckUtils]: 11: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,818 INFO L290 TraceCheckUtils]: 10: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,819 INFO L290 TraceCheckUtils]: 7: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,820 INFO L290 TraceCheckUtils]: 6: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,820 INFO L290 TraceCheckUtils]: 5: Hoare triple {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,821 INFO L290 TraceCheckUtils]: 4: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {10440#(<= |ULTIMATE.start_main_~c1~0#1| 1)} is VALID [2022-02-20 23:48:46,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {10437#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {10441#(<= |ULTIMATE.start_main_~c1~0#1| 0)} is VALID [2022-02-20 23:48:46,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {10437#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(14, 2); {10437#true} is VALID [2022-02-20 23:48:46,822 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:46,822 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1128547647] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:46,822 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:46,822 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 4, 4] total 5 [2022-02-20 23:48:46,823 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1585529046] [2022-02-20 23:48:46,823 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:46,823 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 31 [2022-02-20 23:48:46,823 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:46,823 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,850 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:46,850 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:48:46,850 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:46,851 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:48:46,851 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:46,851 INFO L87 Difference]: Start difference. First operand 193 states and 261 transitions. Second operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:46,986 INFO L93 Difference]: Finished difference Result 247 states and 325 transitions. [2022-02-20 23:48:46,986 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:48:46,986 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 31 [2022-02-20 23:48:46,986 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:46,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 144 transitions. [2022-02-20 23:48:46,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:46,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 144 transitions. [2022-02-20 23:48:46,988 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 144 transitions. [2022-02-20 23:48:47,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:47,107 INFO L225 Difference]: With dead ends: 247 [2022-02-20 23:48:47,107 INFO L226 Difference]: Without dead ends: 247 [2022-02-20 23:48:47,107 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:48:47,108 INFO L933 BasicCegarLoop]: 69 mSDtfsCounter, 108 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 108 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:47,108 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [108 Valid, 165 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:48:47,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-02-20 23:48:47,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 231. [2022-02-20 23:48:47,110 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:47,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call 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,111 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call 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,111 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call 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,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:47,114 INFO L93 Difference]: Finished difference Result 247 states and 325 transitions. [2022-02-20 23:48:47,114 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 325 transitions. [2022-02-20 23:48:47,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:47,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:47,114 INFO L74 IsIncluded]: Start isIncluded. First operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 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 247 states. [2022-02-20 23:48:47,115 INFO L87 Difference]: Start difference. First operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 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 247 states. [2022-02-20 23:48:47,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:47,117 INFO L93 Difference]: Finished difference Result 247 states and 325 transitions. [2022-02-20 23:48:47,117 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 325 transitions. [2022-02-20 23:48:47,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:47,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:47,118 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:47,118 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:47,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 231 states, 212 states have (on average 1.5235849056603774) internal successors, (323), 230 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call 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,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 231 states to 231 states and 323 transitions. [2022-02-20 23:48:47,121 INFO L78 Accepts]: Start accepts. Automaton has 231 states and 323 transitions. Word has length 31 [2022-02-20 23:48:47,121 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:47,121 INFO L470 AbstractCegarLoop]: Abstraction has 231 states and 323 transitions. [2022-02-20 23:48:47,121 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:47,121 INFO L276 IsEmpty]: Start isEmpty. Operand 231 states and 323 transitions. [2022-02-20 23:48:47,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:48:47,121 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:47,121 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:47,140 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:48:47,340 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:47,341 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr42ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:47,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:47,341 INFO L85 PathProgramCache]: Analyzing trace with hash 368804521, now seen corresponding path program 1 times [2022-02-20 23:48:47,341 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:47,341 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1660236122] [2022-02-20 23:48:47,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:47,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:47,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:47,393 INFO L290 TraceCheckUtils]: 0: Hoare triple {11596#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(14, 2); {11596#true} is VALID [2022-02-20 23:48:47,393 INFO L290 TraceCheckUtils]: 1: Hoare triple {11596#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#t~short4#1 := main_~c1~0#1 < 5; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,394 INFO L290 TraceCheckUtils]: 3: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,395 INFO L290 TraceCheckUtils]: 4: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,395 INFO L290 TraceCheckUtils]: 5: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,396 INFO L290 TraceCheckUtils]: 6: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,397 INFO L290 TraceCheckUtils]: 8: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,397 INFO L290 TraceCheckUtils]: 9: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,398 INFO L290 TraceCheckUtils]: 10: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,398 INFO L290 TraceCheckUtils]: 11: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short8#1 := main_~c2~0#1 < 3; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,399 INFO L290 TraceCheckUtils]: 14: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,400 INFO L290 TraceCheckUtils]: 15: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~c2~0#1 := 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,400 INFO L290 TraceCheckUtils]: 16: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,401 INFO L290 TraceCheckUtils]: 18: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,401 INFO L290 TraceCheckUtils]: 19: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,401 INFO L290 TraceCheckUtils]: 20: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,401 INFO L290 TraceCheckUtils]: 21: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,402 INFO L290 TraceCheckUtils]: 22: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,402 INFO L290 TraceCheckUtils]: 23: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,402 INFO L290 TraceCheckUtils]: 24: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,403 INFO L290 TraceCheckUtils]: 25: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,403 INFO L290 TraceCheckUtils]: 26: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,403 INFO L290 TraceCheckUtils]: 27: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,404 INFO L290 TraceCheckUtils]: 29: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~c1~0#1 > 0); {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,404 INFO L290 TraceCheckUtils]: 30: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,404 INFO L290 TraceCheckUtils]: 31: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {11597#false} is VALID [2022-02-20 23:48:47,404 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:47,405 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:47,405 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1660236122] [2022-02-20 23:48:47,405 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1660236122] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:47,405 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [673759094] [2022-02-20 23:48:47,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:47,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:47,406 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:47,407 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:47,409 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:47,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:47,493 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:48:47,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:47,502 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:47,613 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 13 treesize of output 9 [2022-02-20 23:48:47,648 INFO L290 TraceCheckUtils]: 0: Hoare triple {11596#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(14, 2); {11596#true} is VALID [2022-02-20 23:48:47,648 INFO L290 TraceCheckUtils]: 1: Hoare triple {11596#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,649 INFO L290 TraceCheckUtils]: 2: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#t~short4#1 := main_~c1~0#1 < 5; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,649 INFO L290 TraceCheckUtils]: 3: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,650 INFO L290 TraceCheckUtils]: 4: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,650 INFO L290 TraceCheckUtils]: 5: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,651 INFO L290 TraceCheckUtils]: 6: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,652 INFO L290 TraceCheckUtils]: 8: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,652 INFO L290 TraceCheckUtils]: 9: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,653 INFO L290 TraceCheckUtils]: 10: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,653 INFO L290 TraceCheckUtils]: 11: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,653 INFO L290 TraceCheckUtils]: 12: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short8#1 := main_~c2~0#1 < 3; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,654 INFO L290 TraceCheckUtils]: 14: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,654 INFO L290 TraceCheckUtils]: 15: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~c2~0#1 := 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,655 INFO L290 TraceCheckUtils]: 16: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,655 INFO L290 TraceCheckUtils]: 17: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,655 INFO L290 TraceCheckUtils]: 18: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,656 INFO L290 TraceCheckUtils]: 19: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,656 INFO L290 TraceCheckUtils]: 21: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,657 INFO L290 TraceCheckUtils]: 22: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,657 INFO L290 TraceCheckUtils]: 23: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,657 INFO L290 TraceCheckUtils]: 24: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,658 INFO L290 TraceCheckUtils]: 26: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,658 INFO L290 TraceCheckUtils]: 27: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,659 INFO L290 TraceCheckUtils]: 28: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} is VALID [2022-02-20 23:48:47,660 INFO L290 TraceCheckUtils]: 29: Hoare triple {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} assume !(main_~c1~0#1 > 0); {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} is VALID [2022-02-20 23:48:47,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} main_#res#1 := 0; {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} is VALID [2022-02-20 23:48:47,660 INFO L290 TraceCheckUtils]: 31: Hoare triple {11689#(and (= |ULTIMATE.start_main_old_#valid#1| |#valid|) (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 0)))} assume !(#valid == main_old_#valid#1); {11597#false} is VALID [2022-02-20 23:48:47,661 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:47,661 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:47,792 INFO L290 TraceCheckUtils]: 31: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {11597#false} is VALID [2022-02-20 23:48:47,793 INFO L290 TraceCheckUtils]: 30: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,793 INFO L290 TraceCheckUtils]: 29: Hoare triple {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~c1~0#1 > 0); {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,794 INFO L290 TraceCheckUtils]: 28: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.base || 1 == #valid[main_~x~1#1.base];call ULTIMATE.dealloc(main_~x~1#1.base, main_~x~1#1.offset); {11598#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:48:47,794 INFO L290 TraceCheckUtils]: 27: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,794 INFO L290 TraceCheckUtils]: 26: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,794 INFO L290 TraceCheckUtils]: 25: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,795 INFO L290 TraceCheckUtils]: 24: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,795 INFO L290 TraceCheckUtils]: 23: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,795 INFO L290 TraceCheckUtils]: 22: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,795 INFO L290 TraceCheckUtils]: 21: Hoare triple {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,796 INFO L290 TraceCheckUtils]: 20: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {11601#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,796 INFO L290 TraceCheckUtils]: 19: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,796 INFO L290 TraceCheckUtils]: 18: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,797 INFO L290 TraceCheckUtils]: 17: Hoare triple {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short4#1 := main_~c1~0#1 < 5; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,797 INFO L290 TraceCheckUtils]: 16: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {11600#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,797 INFO L290 TraceCheckUtils]: 15: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~c2~0#1 := 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,798 INFO L290 TraceCheckUtils]: 14: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,798 INFO L290 TraceCheckUtils]: 13: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,799 INFO L290 TraceCheckUtils]: 12: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~short8#1 := main_~c2~0#1 < 3; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,799 INFO L290 TraceCheckUtils]: 11: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,799 INFO L290 TraceCheckUtils]: 10: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,800 INFO L290 TraceCheckUtils]: 9: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,801 INFO L290 TraceCheckUtils]: 6: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,803 INFO L290 TraceCheckUtils]: 4: Hoare triple {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {11599#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:48:47,804 INFO L290 TraceCheckUtils]: 3: Hoare triple {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:48:47,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} main_#t~short4#1 := main_~c1~0#1 < 5; {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:48:47,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {11596#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {11780#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (= |ULTIMATE.start_main_old_#valid#1| (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35| 0)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:48:47,805 INFO L290 TraceCheckUtils]: 0: Hoare triple {11596#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(14, 2); {11596#true} is VALID [2022-02-20 23:48:47,805 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:47,805 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [673759094] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:47,805 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:47,806 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 6, 6] total 7 [2022-02-20 23:48:47,806 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43327281] [2022-02-20 23:48:47,806 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:47,806 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 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:47,806 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:47,806 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call 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,837 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:47,837 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:48:47,837 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:47,838 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:48:47,838 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:48:47,838 INFO L87 Difference]: Start difference. First operand 231 states and 323 transitions. Second operand has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call 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:48,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:48,162 INFO L93 Difference]: Finished difference Result 236 states and 327 transitions. [2022-02-20 23:48:48,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:48:48,162 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 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:48,162 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:48,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call 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:48,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 110 transitions. [2022-02-20 23:48:48,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call 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:48,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 110 transitions. [2022-02-20 23:48:48,164 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 110 transitions. [2022-02-20 23:48:48,240 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:48,242 INFO L225 Difference]: With dead ends: 236 [2022-02-20 23:48:48,242 INFO L226 Difference]: Without dead ends: 224 [2022-02-20 23:48:48,242 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 62 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:48:48,243 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 25 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 136 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 136 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 39 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:48,243 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 213 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 136 Invalid, 0 Unknown, 39 Unchecked, 0.1s Time] [2022-02-20 23:48:48,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-02-20 23:48:48,245 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-02-20 23:48:48,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:48,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 0 states have call 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:48,246 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 0 states have call 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:48,246 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 0 states have call 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:48,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:48,248 INFO L93 Difference]: Finished difference Result 224 states and 315 transitions. [2022-02-20 23:48:48,248 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 315 transitions. [2022-02-20 23:48:48,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:48,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:48,249 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 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 224 states. [2022-02-20 23:48:48,249 INFO L87 Difference]: Start difference. First operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 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 224 states. [2022-02-20 23:48:48,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:48,260 INFO L93 Difference]: Finished difference Result 224 states and 315 transitions. [2022-02-20 23:48:48,260 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 315 transitions. [2022-02-20 23:48:48,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:48,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:48,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:48,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:48,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 205 states have (on average 1.5365853658536586) internal successors, (315), 223 states have internal predecessors, (315), 0 states have call successors, (0), 0 states have call 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:48,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 315 transitions. [2022-02-20 23:48:48,263 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 315 transitions. Word has length 32 [2022-02-20 23:48:48,263 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:48,263 INFO L470 AbstractCegarLoop]: Abstraction has 224 states and 315 transitions. [2022-02-20 23:48:48,263 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 5.714285714285714) internal successors, (40), 8 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call 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:48,263 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 315 transitions. [2022-02-20 23:48:48,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:48:48,263 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:48,264 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2022-02-20 23:48:48,314 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:48,479 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:48,479 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr24REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:48,480 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:48,480 INFO L85 PathProgramCache]: Analyzing trace with hash -917642468, now seen corresponding path program 1 times [2022-02-20 23:48:48,480 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:48,480 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [149410548] [2022-02-20 23:48:48,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:48,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:48,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:48,567 INFO L290 TraceCheckUtils]: 0: Hoare triple {12709#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(14, 2); {12709#true} is VALID [2022-02-20 23:48:48,567 INFO L290 TraceCheckUtils]: 1: Hoare triple {12709#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {12709#true} is VALID [2022-02-20 23:48:48,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {12709#true} main_#t~short4#1 := main_~c1~0#1 < 5; {12709#true} is VALID [2022-02-20 23:48:48,567 INFO L290 TraceCheckUtils]: 3: Hoare triple {12709#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12709#true} is VALID [2022-02-20 23:48:48,568 INFO L290 TraceCheckUtils]: 4: Hoare triple {12709#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,569 INFO L290 TraceCheckUtils]: 6: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,569 INFO L290 TraceCheckUtils]: 7: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,569 INFO L290 TraceCheckUtils]: 9: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,570 INFO L290 TraceCheckUtils]: 10: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,570 INFO L290 TraceCheckUtils]: 11: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,570 INFO L290 TraceCheckUtils]: 12: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,570 INFO L290 TraceCheckUtils]: 13: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,571 INFO L290 TraceCheckUtils]: 15: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~c2~0#1 := 0; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,571 INFO L290 TraceCheckUtils]: 16: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,571 INFO L290 TraceCheckUtils]: 17: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12713#(or (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} is VALID [2022-02-20 23:48:48,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {12713#(or (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12713#(or (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} is VALID [2022-02-20 23:48:48,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {12713#(or (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,573 INFO L290 TraceCheckUtils]: 22: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,574 INFO L290 TraceCheckUtils]: 24: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,574 INFO L290 TraceCheckUtils]: 25: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,574 INFO L290 TraceCheckUtils]: 26: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,575 INFO L290 TraceCheckUtils]: 27: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,575 INFO L290 TraceCheckUtils]: 28: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,575 INFO L290 TraceCheckUtils]: 29: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,575 INFO L290 TraceCheckUtils]: 30: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~c2~0#1 := 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,576 INFO L290 TraceCheckUtils]: 31: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,576 INFO L290 TraceCheckUtils]: 32: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {12710#false} is VALID [2022-02-20 23:48:48,576 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:48,576 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:48,576 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [149410548] [2022-02-20 23:48:48,576 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [149410548] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:48,576 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1840159324] [2022-02-20 23:48:48,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:48,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:48,577 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:48,577 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:48,578 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:48,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:48,687 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:48:48,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:48,698 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:48,708 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:48,771 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:48:48,771 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:48,806 INFO L290 TraceCheckUtils]: 0: Hoare triple {12709#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(14, 2); {12709#true} is VALID [2022-02-20 23:48:48,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {12709#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {12709#true} is VALID [2022-02-20 23:48:48,806 INFO L290 TraceCheckUtils]: 2: Hoare triple {12709#true} main_#t~short4#1 := main_~c1~0#1 < 5; {12709#true} is VALID [2022-02-20 23:48:48,806 INFO L290 TraceCheckUtils]: 3: Hoare triple {12709#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12709#true} is VALID [2022-02-20 23:48:48,807 INFO L290 TraceCheckUtils]: 4: Hoare triple {12709#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,808 INFO L290 TraceCheckUtils]: 5: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,808 INFO L290 TraceCheckUtils]: 6: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,808 INFO L290 TraceCheckUtils]: 7: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,808 INFO L290 TraceCheckUtils]: 8: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,809 INFO L290 TraceCheckUtils]: 10: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,809 INFO L290 TraceCheckUtils]: 11: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,809 INFO L290 TraceCheckUtils]: 12: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,810 INFO L290 TraceCheckUtils]: 13: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,810 INFO L290 TraceCheckUtils]: 14: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,810 INFO L290 TraceCheckUtils]: 15: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~c2~0#1 := 0; {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,810 INFO L290 TraceCheckUtils]: 16: Hoare triple {12711#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,811 INFO L290 TraceCheckUtils]: 17: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_#t~short4#1 := main_~c1~0#1 < 5; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,811 INFO L290 TraceCheckUtils]: 18: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,812 INFO L290 TraceCheckUtils]: 22: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,813 INFO L290 TraceCheckUtils]: 23: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,813 INFO L290 TraceCheckUtils]: 24: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,813 INFO L290 TraceCheckUtils]: 25: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,813 INFO L290 TraceCheckUtils]: 26: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,814 INFO L290 TraceCheckUtils]: 27: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,814 INFO L290 TraceCheckUtils]: 28: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,814 INFO L290 TraceCheckUtils]: 29: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,814 INFO L290 TraceCheckUtils]: 30: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~c2~0#1 := 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,815 INFO L290 TraceCheckUtils]: 31: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:48,815 INFO L290 TraceCheckUtils]: 32: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {12710#false} is VALID [2022-02-20 23:48:48,815 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:48,815 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:49,524 INFO L290 TraceCheckUtils]: 32: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {12710#false} is VALID [2022-02-20 23:48:49,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~c2~0#1 := 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,524 INFO L290 TraceCheckUtils]: 29: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,525 INFO L290 TraceCheckUtils]: 26: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,526 INFO L290 TraceCheckUtils]: 24: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,526 INFO L290 TraceCheckUtils]: 23: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,526 INFO L290 TraceCheckUtils]: 22: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,526 INFO L290 TraceCheckUtils]: 20: Hoare triple {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12712#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:48:49,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} is VALID [2022-02-20 23:48:49,529 INFO L290 TraceCheckUtils]: 17: Hoare triple {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} main_#t~short4#1 := main_~c1~0#1 < 5; {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} is VALID [2022-02-20 23:48:49,529 INFO L290 TraceCheckUtils]: 16: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {12852#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~last~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} is VALID [2022-02-20 23:48:49,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} main_~c2~0#1 := 0; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,530 INFO L290 TraceCheckUtils]: 14: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} main_#t~short8#1 := main_~c2~0#1 < 3; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,533 INFO L290 TraceCheckUtils]: 10: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,536 INFO L290 TraceCheckUtils]: 8: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,537 INFO L290 TraceCheckUtils]: 7: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,538 INFO L290 TraceCheckUtils]: 6: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,553 INFO L290 TraceCheckUtils]: 4: Hoare triple {12709#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {12862#(forall ((v_ArrVal_740 Int) (|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| v_ArrVal_740) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:48:49,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {12709#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {12709#true} is VALID [2022-02-20 23:48:49,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {12709#true} main_#t~short4#1 := main_~c1~0#1 < 5; {12709#true} is VALID [2022-02-20 23:48:49,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {12709#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {12709#true} is VALID [2022-02-20 23:48:49,553 INFO L290 TraceCheckUtils]: 0: Hoare triple {12709#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(14, 2); {12709#true} is VALID [2022-02-20 23:48:49,553 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:49,554 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1840159324] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:49,554 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:49,554 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 3, 4] total 6 [2022-02-20 23:48:49,554 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1112720515] [2022-02-20 23:48:49,554 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:49,554 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 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:49,554 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:49,554 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call 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,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:49,598 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:48:49,598 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:49,598 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:48:49,598 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:48:49,598 INFO L87 Difference]: Start difference. First operand 224 states and 315 transitions. Second operand has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call 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,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:49,941 INFO L93 Difference]: Finished difference Result 317 states and 416 transitions. [2022-02-20 23:48:49,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:48:49,941 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 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:49,941 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:49,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call 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,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 201 transitions. [2022-02-20 23:48:49,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call 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,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 201 transitions. [2022-02-20 23:48:49,943 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 201 transitions. [2022-02-20 23:48:50,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 201 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:50,112 INFO L225 Difference]: With dead ends: 317 [2022-02-20 23:48:50,112 INFO L226 Difference]: Without dead ends: 317 [2022-02-20 23:48:50,112 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 68 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:48:50,113 INFO L933 BasicCegarLoop]: 87 mSDtfsCounter, 142 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 142 SdHoareTripleChecker+Valid, 280 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 68 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:50,113 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [142 Valid, 280 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 127 Invalid, 0 Unknown, 68 Unchecked, 0.1s Time] [2022-02-20 23:48:50,113 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 317 states. [2022-02-20 23:48:50,116 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 317 to 262. [2022-02-20 23:48:50,116 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:50,116 INFO L82 GeneralOperation]: Start isEquivalent. First operand 317 states. Second operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 0 states have call 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:50,117 INFO L74 IsIncluded]: Start isIncluded. First operand 317 states. Second operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 0 states have call 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:50,117 INFO L87 Difference]: Start difference. First operand 317 states. Second operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 0 states have call 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:50,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:50,120 INFO L93 Difference]: Finished difference Result 317 states and 416 transitions. [2022-02-20 23:48:50,121 INFO L276 IsEmpty]: Start isEmpty. Operand 317 states and 416 transitions. [2022-02-20 23:48:50,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:50,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:50,121 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 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 317 states. [2022-02-20 23:48:50,121 INFO L87 Difference]: Start difference. First operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 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 317 states. [2022-02-20 23:48:50,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:50,125 INFO L93 Difference]: Finished difference Result 317 states and 416 transitions. [2022-02-20 23:48:50,125 INFO L276 IsEmpty]: Start isEmpty. Operand 317 states and 416 transitions. [2022-02-20 23:48:50,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:50,126 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:50,126 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:50,126 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:50,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 243 states have (on average 1.4938271604938271) internal successors, (363), 261 states have internal predecessors, (363), 0 states have call successors, (0), 0 states have call 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:50,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 363 transitions. [2022-02-20 23:48:50,129 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 363 transitions. Word has length 33 [2022-02-20 23:48:50,129 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:50,129 INFO L470 AbstractCegarLoop]: Abstraction has 262 states and 363 transitions. [2022-02-20 23:48:50,129 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 8.666666666666666) internal successors, (52), 7 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call 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:50,129 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 363 transitions. [2022-02-20 23:48:50,129 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:48:50,129 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:50,129 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2022-02-20 23:48:50,147 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:50,343 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:50,343 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr25REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:50,343 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:50,344 INFO L85 PathProgramCache]: Analyzing trace with hash -917642467, now seen corresponding path program 1 times [2022-02-20 23:48:50,344 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:50,344 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [961736005] [2022-02-20 23:48:50,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:50,344 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:50,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:50,426 INFO L290 TraceCheckUtils]: 0: Hoare triple {14128#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(14, 2); {14128#true} is VALID [2022-02-20 23:48:50,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {14128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {14128#true} is VALID [2022-02-20 23:48:50,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {14128#true} main_#t~short4#1 := main_~c1~0#1 < 5; {14128#true} is VALID [2022-02-20 23:48:50,426 INFO L290 TraceCheckUtils]: 3: Hoare triple {14128#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14128#true} is VALID [2022-02-20 23:48:50,427 INFO L290 TraceCheckUtils]: 4: Hoare triple {14128#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,428 INFO L290 TraceCheckUtils]: 5: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,430 INFO L290 TraceCheckUtils]: 9: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,430 INFO L290 TraceCheckUtils]: 10: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,430 INFO L290 TraceCheckUtils]: 11: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,431 INFO L290 TraceCheckUtils]: 12: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,431 INFO L290 TraceCheckUtils]: 13: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,431 INFO L290 TraceCheckUtils]: 14: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,432 INFO L290 TraceCheckUtils]: 15: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~c2~0#1 := 0; {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:50,432 INFO L290 TraceCheckUtils]: 16: Hoare triple {14130#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,432 INFO L290 TraceCheckUtils]: 17: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} main_#t~short4#1 := main_~c1~0#1 < 5; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,433 INFO L290 TraceCheckUtils]: 18: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,435 INFO L290 TraceCheckUtils]: 21: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,435 INFO L290 TraceCheckUtils]: 22: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,436 INFO L290 TraceCheckUtils]: 23: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,436 INFO L290 TraceCheckUtils]: 24: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,436 INFO L290 TraceCheckUtils]: 25: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,437 INFO L290 TraceCheckUtils]: 26: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,437 INFO L290 TraceCheckUtils]: 27: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} main_#t~short8#1 := main_~c2~0#1 < 3; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,438 INFO L290 TraceCheckUtils]: 28: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,438 INFO L290 TraceCheckUtils]: 29: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,438 INFO L290 TraceCheckUtils]: 30: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} main_~c2~0#1 := 0; {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,438 INFO L290 TraceCheckUtils]: 31: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} is VALID [2022-02-20 23:48:50,439 INFO L290 TraceCheckUtils]: 32: Hoare triple {14131#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~last~0#1.base|) 20))} assume !(4 + (12 + main_~last~0#1.offset) <= #length[main_~last~0#1.base] && 0 <= 12 + main_~last~0#1.offset); {14129#false} is VALID [2022-02-20 23:48:50,439 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:50,439 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:50,439 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [961736005] [2022-02-20 23:48:50,441 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [961736005] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:48:50,441 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [888840750] [2022-02-20 23:48:50,441 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:50,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:50,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:50,456 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:50,457 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:50,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:50,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:48:50,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:50,583 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:50,598 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,847 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:50,848 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:50,861 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:50,861 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:51,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {14128#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(14, 2); {14128#true} is VALID [2022-02-20 23:48:51,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {14128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {14128#true} is VALID [2022-02-20 23:48:51,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {14128#true} main_#t~short4#1 := main_~c1~0#1 < 5; {14128#true} is VALID [2022-02-20 23:48:51,001 INFO L290 TraceCheckUtils]: 3: Hoare triple {14128#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14128#true} is VALID [2022-02-20 23:48:51,003 INFO L290 TraceCheckUtils]: 4: Hoare triple {14128#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,004 INFO L290 TraceCheckUtils]: 5: Hoare triple {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,004 INFO L290 TraceCheckUtils]: 6: Hoare triple {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,005 INFO L290 TraceCheckUtils]: 7: Hoare triple {14147#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,005 INFO L290 TraceCheckUtils]: 8: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,006 INFO L290 TraceCheckUtils]: 9: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,007 INFO L290 TraceCheckUtils]: 10: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_#t~short8#1 := main_~c2~0#1 < 3; {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,009 INFO L290 TraceCheckUtils]: 15: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~c2~0#1 := 0; {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:51,009 INFO L290 TraceCheckUtils]: 16: Hoare triple {14157#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,010 INFO L290 TraceCheckUtils]: 17: Hoare triple {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} main_#t~short4#1 := main_~c1~0#1 < 5; {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,010 INFO L290 TraceCheckUtils]: 18: Hoare triple {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,011 INFO L290 TraceCheckUtils]: 19: Hoare triple {14185#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,012 INFO L290 TraceCheckUtils]: 20: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,014 INFO L290 TraceCheckUtils]: 21: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,015 INFO L290 TraceCheckUtils]: 22: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,015 INFO L290 TraceCheckUtils]: 23: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,016 INFO L290 TraceCheckUtils]: 24: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,017 INFO L290 TraceCheckUtils]: 26: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,017 INFO L290 TraceCheckUtils]: 27: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} main_#t~short8#1 := main_~c2~0#1 < 3; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,018 INFO L290 TraceCheckUtils]: 30: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} main_~c2~0#1 := 0; {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,019 INFO L290 TraceCheckUtils]: 31: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} is VALID [2022-02-20 23:48:51,020 INFO L290 TraceCheckUtils]: 32: Hoare triple {14195#(and (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|))} assume !(4 + (12 + main_~last~0#1.offset) <= #length[main_~last~0#1.base] && 0 <= 12 + main_~last~0#1.offset); {14129#false} is VALID [2022-02-20 23:48:51,020 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:51,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:51,915 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 37 treesize of output 33 [2022-02-20 23:48:52,042 INFO L290 TraceCheckUtils]: 32: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(4 + (12 + main_~last~0#1.offset) <= #length[main_~last~0#1.base] && 0 <= 12 + main_~last~0#1.offset); {14129#false} is VALID [2022-02-20 23:48:52,042 INFO L290 TraceCheckUtils]: 31: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,042 INFO L290 TraceCheckUtils]: 30: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} main_~c2~0#1 := 0; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,043 INFO L290 TraceCheckUtils]: 29: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,043 INFO L290 TraceCheckUtils]: 28: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,044 INFO L290 TraceCheckUtils]: 27: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,044 INFO L290 TraceCheckUtils]: 26: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,044 INFO L290 TraceCheckUtils]: 25: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,045 INFO L290 TraceCheckUtils]: 24: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,051 INFO L290 TraceCheckUtils]: 23: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,053 INFO L290 TraceCheckUtils]: 21: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,055 INFO L290 TraceCheckUtils]: 19: Hoare triple {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14235#(and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:48:52,055 INFO L290 TraceCheckUtils]: 18: Hoare triple {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,056 INFO L290 TraceCheckUtils]: 17: Hoare triple {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} main_#t~short4#1 := main_~c1~0#1 < 5; {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,057 INFO L290 TraceCheckUtils]: 16: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {14275#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_871 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,057 INFO L290 TraceCheckUtils]: 15: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} main_~c2~0#1 := 0; {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,058 INFO L290 TraceCheckUtils]: 14: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} main_#t~short8#1 := main_~c2~0#1 < 3; {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,060 INFO L290 TraceCheckUtils]: 11: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,061 INFO L290 TraceCheckUtils]: 10: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,061 INFO L290 TraceCheckUtils]: 9: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {14285#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_871 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_39| v_ArrVal_871) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0))))} is VALID [2022-02-20 23:48:52,064 INFO L290 TraceCheckUtils]: 6: Hoare triple {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} is VALID [2022-02-20 23:48:52,064 INFO L290 TraceCheckUtils]: 5: Hoare triple {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} is VALID [2022-02-20 23:48:52,065 INFO L290 TraceCheckUtils]: 4: Hoare triple {14128#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14313#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_39| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_39|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_39|)))))} is VALID [2022-02-20 23:48:52,065 INFO L290 TraceCheckUtils]: 3: Hoare triple {14128#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {14128#true} is VALID [2022-02-20 23:48:52,065 INFO L290 TraceCheckUtils]: 2: Hoare triple {14128#true} main_#t~short4#1 := main_~c1~0#1 < 5; {14128#true} is VALID [2022-02-20 23:48:52,065 INFO L290 TraceCheckUtils]: 1: Hoare triple {14128#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {14128#true} is VALID [2022-02-20 23:48:52,065 INFO L290 TraceCheckUtils]: 0: Hoare triple {14128#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(14, 2); {14128#true} is VALID [2022-02-20 23:48:52,066 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:52,066 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [888840750] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:52,066 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:48:52,066 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 5, 5] total 11 [2022-02-20 23:48:52,066 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2038241466] [2022-02-20 23:48:52,066 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:52,066 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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) Word has length 33 [2022-02-20 23:48:52,066 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:52,067 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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:52,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:52,143 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:48:52,143 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:52,144 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:48:52,144 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=100, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:48:52,144 INFO L87 Difference]: Start difference. First operand 262 states and 363 transitions. Second operand has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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:52,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:52,691 INFO L93 Difference]: Finished difference Result 287 states and 386 transitions. [2022-02-20 23:48:52,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:48:52,691 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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) Word has length 33 [2022-02-20 23:48:52,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:52,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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:52,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 127 transitions. [2022-02-20 23:48:52,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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:52,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 127 transitions. [2022-02-20 23:48:52,692 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 127 transitions. [2022-02-20 23:48:52,798 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:52,800 INFO L225 Difference]: With dead ends: 287 [2022-02-20 23:48:52,801 INFO L226 Difference]: Without dead ends: 287 [2022-02-20 23:48:52,801 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 60 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=83, Invalid=189, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:48:52,801 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 293 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 293 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 244 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 81 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:52,801 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [293 Valid, 160 Invalid, 244 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 144 Invalid, 0 Unknown, 81 Unchecked, 0.1s Time] [2022-02-20 23:48:52,802 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 287 states. [2022-02-20 23:48:52,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 287 to 264. [2022-02-20 23:48:52,805 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:52,805 INFO L82 GeneralOperation]: Start isEquivalent. First operand 287 states. Second operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 0 states have call 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:52,805 INFO L74 IsIncluded]: Start isIncluded. First operand 287 states. Second operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 0 states have call 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:52,805 INFO L87 Difference]: Start difference. First operand 287 states. Second operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 0 states have call 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:52,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:52,809 INFO L93 Difference]: Finished difference Result 287 states and 386 transitions. [2022-02-20 23:48:52,809 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 386 transitions. [2022-02-20 23:48:52,809 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:52,809 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:52,809 INFO L74 IsIncluded]: Start isIncluded. First operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 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 287 states. [2022-02-20 23:48:52,809 INFO L87 Difference]: Start difference. First operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 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 287 states. [2022-02-20 23:48:52,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:52,819 INFO L93 Difference]: Finished difference Result 287 states and 386 transitions. [2022-02-20 23:48:52,819 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 386 transitions. [2022-02-20 23:48:52,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:52,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:52,819 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:52,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:52,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 264 states, 245 states have (on average 1.489795918367347) internal successors, (365), 263 states have internal predecessors, (365), 0 states have call successors, (0), 0 states have call 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:52,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 365 transitions. [2022-02-20 23:48:52,822 INFO L78 Accepts]: Start accepts. Automaton has 264 states and 365 transitions. Word has length 33 [2022-02-20 23:48:52,822 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:52,822 INFO L470 AbstractCegarLoop]: Abstraction has 264 states and 365 transitions. [2022-02-20 23:48:52,822 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 8.272727272727273) internal successors, (91), 12 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:52,823 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 365 transitions. [2022-02-20 23:48:52,823 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:48:52,823 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:52,823 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:52,840 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:53,031 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,SelfDestructingSolverStorable21 [2022-02-20 23:48:53,032 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:53,032 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:53,032 INFO L85 PathProgramCache]: Analyzing trace with hash -499896363, now seen corresponding path program 1 times [2022-02-20 23:48:53,032 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:53,032 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1138189922] [2022-02-20 23:48:53,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:53,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:53,056 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:48:53,069 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2087585701] [2022-02-20 23:48:53,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:53,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:53,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:53,070 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:53,071 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:53,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:53,186 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:48:53,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:53,197 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:53,222 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:53,266 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:53,302 INFO L356 Elim1Store]: treesize reduction 30, result has 37.5 percent of original size [2022-02-20 23:48:53,303 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 21 treesize of output 29 [2022-02-20 23:48:53,421 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:53,421 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 33 treesize of output 24 [2022-02-20 23:48:53,485 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:53,508 INFO L290 TraceCheckUtils]: 0: Hoare triple {15471#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(14, 2); {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {15471#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 2: Hoare triple {15471#true} main_#t~short4#1 := main_~c1~0#1 < 5; {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 3: Hoare triple {15471#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 4: Hoare triple {15471#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 5: Hoare triple {15471#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 8: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 9: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 10: Hoare triple {15471#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {15471#true} is VALID [2022-02-20 23:48:53,508 INFO L290 TraceCheckUtils]: 11: Hoare triple {15471#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15471#true} is VALID [2022-02-20 23:48:53,509 INFO L290 TraceCheckUtils]: 12: Hoare triple {15471#true} main_#t~short8#1 := main_~c2~0#1 < 3; {15471#true} is VALID [2022-02-20 23:48:53,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {15471#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {15471#true} is VALID [2022-02-20 23:48:53,510 INFO L290 TraceCheckUtils]: 14: Hoare triple {15471#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,510 INFO L290 TraceCheckUtils]: 15: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,510 INFO L290 TraceCheckUtils]: 16: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,511 INFO L290 TraceCheckUtils]: 18: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,511 INFO L290 TraceCheckUtils]: 19: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,511 INFO L290 TraceCheckUtils]: 20: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,511 INFO L290 TraceCheckUtils]: 21: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,512 INFO L290 TraceCheckUtils]: 22: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,512 INFO L290 TraceCheckUtils]: 23: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:48:53,513 INFO L290 TraceCheckUtils]: 24: Hoare triple {15518#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:53,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:53,513 INFO L290 TraceCheckUtils]: 26: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} main_#t~short8#1 := main_~c2~0#1 < 3; {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:53,513 INFO L290 TraceCheckUtils]: 27: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:53,514 INFO L290 TraceCheckUtils]: 28: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {15562#(and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:53,515 INFO L290 TraceCheckUtils]: 29: Hoare triple {15562#(and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15562#(and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:53,515 INFO L290 TraceCheckUtils]: 30: Hoare triple {15562#(and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {15569#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem11#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:48:53,516 INFO L290 TraceCheckUtils]: 31: Hoare triple {15569#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem11#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {15573#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:53,517 INFO L290 TraceCheckUtils]: 32: Hoare triple {15573#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {15573#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:53,517 INFO L290 TraceCheckUtils]: 33: Hoare triple {15573#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {15580#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} is VALID [2022-02-20 23:48:53,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {15580#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} assume !(1 == #valid[main_#t~mem12#1.base]); {15472#false} is VALID [2022-02-20 23:48:53,517 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:53,518 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:54,126 INFO L290 TraceCheckUtils]: 34: Hoare triple {15580#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} assume !(1 == #valid[main_#t~mem12#1.base]); {15472#false} is VALID [2022-02-20 23:48:54,127 INFO L290 TraceCheckUtils]: 33: Hoare triple {15587#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {15580#(= (select |#valid| |ULTIMATE.start_main_#t~mem12#1.base|) 1)} is VALID [2022-02-20 23:48:54,127 INFO L290 TraceCheckUtils]: 32: Hoare triple {15587#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {15587#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:54,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {15594#(= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {15587#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:54,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {15594#(= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1)} is VALID [2022-02-20 23:48:54,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:54,130 INFO L290 TraceCheckUtils]: 28: Hoare triple {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {15549#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} is VALID [2022-02-20 23:48:54,130 INFO L290 TraceCheckUtils]: 27: Hoare triple {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:48:54,131 INFO L290 TraceCheckUtils]: 26: Hoare triple {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} main_#t~short8#1 := main_~c2~0#1 < 3; {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:48:54,131 INFO L290 TraceCheckUtils]: 25: Hoare triple {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:48:54,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {15604#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:48:54,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,133 INFO L290 TraceCheckUtils]: 22: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,133 INFO L290 TraceCheckUtils]: 21: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,133 INFO L290 TraceCheckUtils]: 20: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,133 INFO L290 TraceCheckUtils]: 19: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,134 INFO L290 TraceCheckUtils]: 18: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,134 INFO L290 TraceCheckUtils]: 17: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,134 INFO L290 TraceCheckUtils]: 16: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,134 INFO L290 TraceCheckUtils]: 15: Hoare triple {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,135 INFO L290 TraceCheckUtils]: 14: Hoare triple {15471#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {15617#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int) (v_ArrVal_1019 Int)) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_1019) |ULTIMATE.start_main_~y~0#1.base|) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0))))} is VALID [2022-02-20 23:48:54,135 INFO L290 TraceCheckUtils]: 13: Hoare triple {15471#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {15471#true} is VALID [2022-02-20 23:48:54,135 INFO L290 TraceCheckUtils]: 12: Hoare triple {15471#true} main_#t~short8#1 := main_~c2~0#1 < 3; {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 11: Hoare triple {15471#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 10: Hoare triple {15471#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 7: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 6: Hoare triple {15471#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 5: Hoare triple {15471#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 4: Hoare triple {15471#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15471#true} is VALID [2022-02-20 23:48:54,136 INFO L290 TraceCheckUtils]: 3: Hoare triple {15471#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {15471#true} is VALID [2022-02-20 23:48:54,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {15471#true} main_#t~short4#1 := main_~c1~0#1 < 5; {15471#true} is VALID [2022-02-20 23:48:54,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {15471#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {15471#true} is VALID [2022-02-20 23:48:54,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {15471#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(14, 2); {15471#true} is VALID [2022-02-20 23:48:54,137 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:54,137 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:54,137 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1138189922] [2022-02-20 23:48:54,137 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:48:54,137 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2087585701] [2022-02-20 23:48:54,138 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2087585701] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:54,138 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:48:54,138 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 11 [2022-02-20 23:48:54,138 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2007538038] [2022-02-20 23:48:54,138 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:54,138 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 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 35 [2022-02-20 23:48:54,139 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:54,139 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call 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,185 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:54,185 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:48:54,185 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:54,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:48:54,185 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:48:54,185 INFO L87 Difference]: Start difference. First operand 264 states and 365 transitions. Second operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call 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,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:54,767 INFO L93 Difference]: Finished difference Result 283 states and 381 transitions. [2022-02-20 23:48:54,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:48:54,767 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 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 35 [2022-02-20 23:48:54,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:54,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call 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,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 107 transitions. [2022-02-20 23:48:54,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call 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,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 107 transitions. [2022-02-20 23:48:54,769 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 107 transitions. [2022-02-20 23:48:54,858 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:54,861 INFO L225 Difference]: With dead ends: 283 [2022-02-20 23:48:54,861 INFO L226 Difference]: Without dead ends: 283 [2022-02-20 23:48:54,861 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 59 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=81, Invalid=261, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:48:54,862 INFO L933 BasicCegarLoop]: 51 mSDtfsCounter, 47 mSDsluCounter, 313 mSDsCounter, 0 mSdLazyCounter, 236 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 364 SdHoareTripleChecker+Invalid, 314 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 236 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 67 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:54,862 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 364 Invalid, 314 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 236 Invalid, 0 Unknown, 67 Unchecked, 0.2s Time] [2022-02-20 23:48:54,862 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-02-20 23:48:54,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 263. [2022-02-20 23:48:54,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:54,865 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 0 states have call 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,865 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 0 states have call 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,866 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 0 states have call 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,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:54,869 INFO L93 Difference]: Finished difference Result 283 states and 381 transitions. [2022-02-20 23:48:54,869 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 381 transitions. [2022-02-20 23:48:54,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:54,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:54,870 INFO L74 IsIncluded]: Start isIncluded. First operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 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 283 states. [2022-02-20 23:48:54,870 INFO L87 Difference]: Start difference. First operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 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 283 states. [2022-02-20 23:48:54,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:54,873 INFO L93 Difference]: Finished difference Result 283 states and 381 transitions. [2022-02-20 23:48:54,873 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 381 transitions. [2022-02-20 23:48:54,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:54,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:54,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:54,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:54,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 263 states, 245 states have (on average 1.4775510204081632) internal successors, (362), 262 states have internal predecessors, (362), 0 states have call successors, (0), 0 states have call 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,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 263 states to 263 states and 362 transitions. [2022-02-20 23:48:54,877 INFO L78 Accepts]: Start accepts. Automaton has 263 states and 362 transitions. Word has length 35 [2022-02-20 23:48:54,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:54,877 INFO L470 AbstractCegarLoop]: Abstraction has 263 states and 362 transitions. [2022-02-20 23:48:54,877 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 5.0) internal successors, (55), 12 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call 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,878 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 362 transitions. [2022-02-20 23:48:54,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:48:54,878 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:54,878 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:54,897 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:55,091 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:55,091 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:55,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:55,092 INFO L85 PathProgramCache]: Analyzing trace with hash -499896362, now seen corresponding path program 1 times [2022-02-20 23:48:55,092 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:55,092 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1629423811] [2022-02-20 23:48:55,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:55,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:55,114 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:48:55,115 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [938219780] [2022-02-20 23:48:55,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:55,115 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:55,115 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:55,116 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:55,117 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:55,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:55,240 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 33 conjunts are in the unsatisfiable core [2022-02-20 23:48:55,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:55,258 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:55,285 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:55,445 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:55,467 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:55,560 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:48:55,560 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 32 [2022-02-20 23:48:55,598 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:48:55,602 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 15 treesize of output 15 [2022-02-20 23:48:55,805 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:55,806 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 39 treesize of output 30 [2022-02-20 23:48:55,834 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:48:55,835 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 38 treesize of output 29 [2022-02-20 23:48:55,954 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 31 treesize of output 19 [2022-02-20 23:48:55,979 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 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 26 treesize of output 14 [2022-02-20 23:48:56,002 INFO L290 TraceCheckUtils]: 0: Hoare triple {16816#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(14, 2); {16816#true} is VALID [2022-02-20 23:48:56,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {16816#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {16816#true} is VALID [2022-02-20 23:48:56,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {16816#true} main_#t~short4#1 := main_~c1~0#1 < 5; {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 3: Hoare triple {16816#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 4: Hoare triple {16816#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {16816#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 6: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 7: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 8: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 9: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 10: Hoare triple {16816#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 11: Hoare triple {16816#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 12: Hoare triple {16816#true} main_#t~short8#1 := main_~c2~0#1 < 3; {16816#true} is VALID [2022-02-20 23:48:56,003 INFO L290 TraceCheckUtils]: 13: Hoare triple {16816#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {16816#true} is VALID [2022-02-20 23:48:56,004 INFO L290 TraceCheckUtils]: 14: Hoare triple {16816#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,004 INFO L290 TraceCheckUtils]: 15: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,005 INFO L290 TraceCheckUtils]: 16: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,005 INFO L290 TraceCheckUtils]: 17: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,005 INFO L290 TraceCheckUtils]: 18: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,006 INFO L290 TraceCheckUtils]: 19: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,006 INFO L290 TraceCheckUtils]: 20: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,007 INFO L290 TraceCheckUtils]: 21: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,007 INFO L290 TraceCheckUtils]: 22: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} is VALID [2022-02-20 23:48:56,008 INFO L290 TraceCheckUtils]: 23: Hoare triple {16863#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {16891#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} is VALID [2022-02-20 23:48:56,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {16891#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:56,009 INFO L290 TraceCheckUtils]: 25: Hoare triple {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:56,010 INFO L290 TraceCheckUtils]: 26: Hoare triple {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} main_#t~short8#1 := main_~c2~0#1 < 3; {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:56,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:48:56,011 INFO L290 TraceCheckUtils]: 28: Hoare triple {16895#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {16908#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:48:56,012 INFO L290 TraceCheckUtils]: 29: Hoare triple {16908#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16908#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:48:56,013 INFO L290 TraceCheckUtils]: 30: Hoare triple {16908#(and (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {16915#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= |ULTIMATE.start_main_#t~mem11#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem11#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:48:56,014 INFO L290 TraceCheckUtils]: 31: Hoare triple {16915#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= |ULTIMATE.start_main_#t~mem11#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~y~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem11#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {16919#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)))} is VALID [2022-02-20 23:48:56,014 INFO L290 TraceCheckUtils]: 32: Hoare triple {16919#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {16919#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)))} is VALID [2022-02-20 23:48:56,015 INFO L290 TraceCheckUtils]: 33: Hoare triple {16919#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~y~0#1.base|)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {16926#(and (<= 0 |ULTIMATE.start_main_#t~mem12#1.offset|) (<= (+ |ULTIMATE.start_main_#t~mem12#1.offset| 12) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} is VALID [2022-02-20 23:48:56,015 INFO L290 TraceCheckUtils]: 34: Hoare triple {16926#(and (<= 0 |ULTIMATE.start_main_#t~mem12#1.offset|) (<= (+ |ULTIMATE.start_main_#t~mem12#1.offset| 12) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} assume !(4 + (4 + main_#t~mem12#1.offset) <= #length[main_#t~mem12#1.base] && 0 <= 4 + main_#t~mem12#1.offset); {16817#false} is VALID [2022-02-20 23:48:56,016 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:56,016 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:56,526 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 37 treesize of output 33 [2022-02-20 23:48:56,796 INFO L290 TraceCheckUtils]: 34: Hoare triple {16930#(and (<= 0 (+ |ULTIMATE.start_main_#t~mem12#1.offset| 4)) (<= (+ |ULTIMATE.start_main_#t~mem12#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} assume !(4 + (4 + main_#t~mem12#1.offset) <= #length[main_#t~mem12#1.base] && 0 <= 4 + main_#t~mem12#1.offset); {16817#false} is VALID [2022-02-20 23:48:56,797 INFO L290 TraceCheckUtils]: 33: Hoare triple {16934#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 4)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {16930#(and (<= 0 (+ |ULTIMATE.start_main_#t~mem12#1.offset| 4)) (<= (+ |ULTIMATE.start_main_#t~mem12#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem12#1.base|)))} is VALID [2022-02-20 23:48:56,797 INFO L290 TraceCheckUtils]: 32: Hoare triple {16934#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 4)))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {16934#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 4)))} is VALID [2022-02-20 23:48:56,799 INFO L290 TraceCheckUtils]: 31: Hoare triple {16941#(and (<= (+ |ULTIMATE.start_main_#t~mem11#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem11#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem11#1.offset| 4)))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {16934#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 4)))} is VALID [2022-02-20 23:48:56,799 INFO L290 TraceCheckUtils]: 30: Hoare triple {16945#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {16941#(and (<= (+ |ULTIMATE.start_main_#t~mem11#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem11#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem11#1.offset| 4)))} is VALID [2022-02-20 23:48:56,800 INFO L290 TraceCheckUtils]: 29: Hoare triple {16945#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16945#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:48:56,801 INFO L290 TraceCheckUtils]: 28: Hoare triple {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {16945#(and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:48:56,802 INFO L290 TraceCheckUtils]: 27: Hoare triple {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,803 INFO L290 TraceCheckUtils]: 26: Hoare triple {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} main_#t~short8#1 := main_~c2~0#1 < 3; {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,804 INFO L290 TraceCheckUtils]: 25: Hoare triple {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,805 INFO L290 TraceCheckUtils]: 24: Hoare triple {16965#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) |ULTIMATE.start_main_~y~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {16952#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 8) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,806 INFO L290 TraceCheckUtils]: 23: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {16965#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (forall ((v_ArrVal_1171 Int)) (<= (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_32| v_ArrVal_1171) |ULTIMATE.start_main_~y~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,806 INFO L290 TraceCheckUtils]: 22: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,806 INFO L290 TraceCheckUtils]: 21: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,808 INFO L290 TraceCheckUtils]: 16: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,808 INFO L290 TraceCheckUtils]: 15: Hoare triple {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 14: Hoare triple {16816#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {16969#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_32| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (not (= |ULTIMATE.start_main_~y~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_32|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_32|) 0))))} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 13: Hoare triple {16816#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 12: Hoare triple {16816#true} main_#t~short8#1 := main_~c2~0#1 < 3; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 11: Hoare triple {16816#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 10: Hoare triple {16816#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 7: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 6: Hoare triple {16816#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 5: Hoare triple {16816#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 4: Hoare triple {16816#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 3: Hoare triple {16816#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {16816#true} main_#t~short4#1 := main_~c1~0#1 < 5; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {16816#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {16816#true} is VALID [2022-02-20 23:48:56,809 INFO L290 TraceCheckUtils]: 0: Hoare triple {16816#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(14, 2); {16816#true} is VALID [2022-02-20 23:48:56,810 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:56,810 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:56,810 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1629423811] [2022-02-20 23:48:56,810 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:48:56,810 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [938219780] [2022-02-20 23:48:56,810 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [938219780] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:56,810 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:48:56,810 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 15 [2022-02-20 23:48:56,810 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1506734110] [2022-02-20 23:48:56,810 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:56,810 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 35 [2022-02-20 23:48:56,811 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:56,811 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:56,878 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:56,878 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 23:48:56,879 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:56,879 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 23:48:56,879 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=200, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:48:56,879 INFO L87 Difference]: Start difference. First operand 263 states and 362 transitions. Second operand has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:58,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:58,129 INFO L93 Difference]: Finished difference Result 358 states and 479 transitions. [2022-02-20 23:48:58,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:48:58,129 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 35 [2022-02-20 23:48:58,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:48:58,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:58,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-02-20 23:48:58,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:58,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-02-20 23:48:58,132 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-02-20 23:48:58,277 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:58,281 INFO L225 Difference]: With dead ends: 358 [2022-02-20 23:48:58,281 INFO L226 Difference]: Without dead ends: 358 [2022-02-20 23:48:58,281 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 54 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 71 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=123, Invalid=527, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:48:58,282 INFO L933 BasicCegarLoop]: 66 mSDtfsCounter, 157 mSDsluCounter, 457 mSDsCounter, 0 mSdLazyCounter, 326 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 523 SdHoareTripleChecker+Invalid, 493 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 326 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 158 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:48:58,283 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [157 Valid, 523 Invalid, 493 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 326 Invalid, 0 Unknown, 158 Unchecked, 0.3s Time] [2022-02-20 23:48:58,283 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 358 states. [2022-02-20 23:48:58,286 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 358 to 244. [2022-02-20 23:48:58,286 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:48:58,286 INFO L82 GeneralOperation]: Start isEquivalent. First operand 358 states. Second operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 0 states have call 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:58,286 INFO L74 IsIncluded]: Start isIncluded. First operand 358 states. Second operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 0 states have call 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:58,286 INFO L87 Difference]: Start difference. First operand 358 states. Second operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 0 states have call 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:58,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:58,291 INFO L93 Difference]: Finished difference Result 358 states and 479 transitions. [2022-02-20 23:48:58,291 INFO L276 IsEmpty]: Start isEmpty. Operand 358 states and 479 transitions. [2022-02-20 23:48:58,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:58,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:58,292 INFO L74 IsIncluded]: Start isIncluded. First operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 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 358 states. [2022-02-20 23:48:58,292 INFO L87 Difference]: Start difference. First operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 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 358 states. [2022-02-20 23:48:58,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:48:58,297 INFO L93 Difference]: Finished difference Result 358 states and 479 transitions. [2022-02-20 23:48:58,297 INFO L276 IsEmpty]: Start isEmpty. Operand 358 states and 479 transitions. [2022-02-20 23:48:58,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:48:58,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:48:58,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:48:58,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:48:58,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 244 states, 227 states have (on average 1.502202643171806) internal successors, (341), 243 states have internal predecessors, (341), 0 states have call successors, (0), 0 states have call 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:58,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 244 states to 244 states and 341 transitions. [2022-02-20 23:48:58,301 INFO L78 Accepts]: Start accepts. Automaton has 244 states and 341 transitions. Word has length 35 [2022-02-20 23:48:58,301 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:48:58,301 INFO L470 AbstractCegarLoop]: Abstraction has 244 states and 341 transitions. [2022-02-20 23:48:58,301 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 3.7333333333333334) internal successors, (56), 16 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:48:58,301 INFO L276 IsEmpty]: Start isEmpty. Operand 244 states and 341 transitions. [2022-02-20 23:48:58,301 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:48:58,301 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:48:58,302 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:48:58,325 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:48:58,519 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:58,520 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr29REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:48:58,520 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:48:58,520 INFO L85 PathProgramCache]: Analyzing trace with hash -1032157181, now seen corresponding path program 1 times [2022-02-20 23:48:58,520 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:48:58,520 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [977771853] [2022-02-20 23:48:58,520 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:58,520 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:48:58,547 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:48:58,547 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2021132185] [2022-02-20 23:48:58,547 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:48:58,547 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:48:58,547 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:48:58,548 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:48:58,549 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:48:58,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:58,704 INFO L263 TraceCheckSpWp]: Trace formula consists of 296 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:48:58,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:48:58,716 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:48:58,730 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:58,882 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:48:58,883 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:48:58,898 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:48:58,898 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:59,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {18376#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(14, 2); {18376#true} is VALID [2022-02-20 23:48:59,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {18376#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {18376#true} is VALID [2022-02-20 23:48:59,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {18376#true} main_#t~short4#1 := main_~c1~0#1 < 5; {18376#true} is VALID [2022-02-20 23:48:59,092 INFO L290 TraceCheckUtils]: 3: Hoare triple {18376#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {18376#true} is VALID [2022-02-20 23:48:59,093 INFO L290 TraceCheckUtils]: 4: Hoare triple {18376#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,093 INFO L290 TraceCheckUtils]: 5: Hoare triple {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,094 INFO L290 TraceCheckUtils]: 6: Hoare triple {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,094 INFO L290 TraceCheckUtils]: 7: Hoare triple {18393#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,095 INFO L290 TraceCheckUtils]: 8: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,095 INFO L290 TraceCheckUtils]: 9: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,096 INFO L290 TraceCheckUtils]: 10: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,096 INFO L290 TraceCheckUtils]: 11: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_#t~short8#1 := main_~c2~0#1 < 3; {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,097 INFO L290 TraceCheckUtils]: 13: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:48:59,099 INFO L290 TraceCheckUtils]: 14: Hoare triple {18403#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,099 INFO L290 TraceCheckUtils]: 15: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,100 INFO L290 TraceCheckUtils]: 16: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,101 INFO L290 TraceCheckUtils]: 19: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,101 INFO L290 TraceCheckUtils]: 20: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,102 INFO L290 TraceCheckUtils]: 21: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,104 INFO L290 TraceCheckUtils]: 23: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,104 INFO L290 TraceCheckUtils]: 24: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,105 INFO L290 TraceCheckUtils]: 25: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,105 INFO L290 TraceCheckUtils]: 26: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,106 INFO L290 TraceCheckUtils]: 27: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,106 INFO L290 TraceCheckUtils]: 28: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,106 INFO L290 TraceCheckUtils]: 29: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~c2~0#1 := 0; {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,107 INFO L290 TraceCheckUtils]: 30: Hoare triple {18425#(and (<= 0 |ULTIMATE.start_main_~x~0#1.offset|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,107 INFO L290 TraceCheckUtils]: 31: Hoare triple {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} main_#t~short4#1 := main_~c1~0#1 < 5; {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,107 INFO L290 TraceCheckUtils]: 32: Hoare triple {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,108 INFO L290 TraceCheckUtils]: 33: Hoare triple {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,108 INFO L290 TraceCheckUtils]: 34: Hoare triple {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,109 INFO L290 TraceCheckUtils]: 35: Hoare triple {18474#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (<= (+ |ULTIMATE.start_main_~first~0#1.offset| 20) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(4 + (12 + main_~first~0#1.offset) <= #length[main_~first~0#1.base] && 0 <= 12 + main_~first~0#1.offset); {18377#false} is VALID [2022-02-20 23:48:59,110 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:59,110 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:48:59,674 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 37 treesize of output 33 [2022-02-20 23:48:59,787 INFO L290 TraceCheckUtils]: 35: Hoare triple {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(4 + (12 + main_~first~0#1.offset) <= #length[main_~first~0#1.base] && 0 <= 12 + main_~first~0#1.offset); {18377#false} is VALID [2022-02-20 23:48:59,787 INFO L290 TraceCheckUtils]: 34: Hoare triple {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,787 INFO L290 TraceCheckUtils]: 33: Hoare triple {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,788 INFO L290 TraceCheckUtils]: 32: Hoare triple {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,788 INFO L290 TraceCheckUtils]: 31: Hoare triple {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} main_#t~short4#1 := main_~c1~0#1 < 5; {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,789 INFO L290 TraceCheckUtils]: 30: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {18490#(and (<= 0 (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= (+ 16 |ULTIMATE.start_main_~first~0#1.offset|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:48:59,789 INFO L290 TraceCheckUtils]: 29: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~c2~0#1 := 0; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,789 INFO L290 TraceCheckUtils]: 28: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,790 INFO L290 TraceCheckUtils]: 27: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,790 INFO L290 TraceCheckUtils]: 26: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,791 INFO L290 TraceCheckUtils]: 24: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,792 INFO L290 TraceCheckUtils]: 23: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,792 INFO L290 TraceCheckUtils]: 22: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,792 INFO L290 TraceCheckUtils]: 21: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,793 INFO L290 TraceCheckUtils]: 20: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,795 INFO L290 TraceCheckUtils]: 15: Hoare triple {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,797 INFO L290 TraceCheckUtils]: 14: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {18506#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:48:59,797 INFO L290 TraceCheckUtils]: 13: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,798 INFO L290 TraceCheckUtils]: 12: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} main_#t~short8#1 := main_~c2~0#1 < 3; {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,798 INFO L290 TraceCheckUtils]: 11: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,799 INFO L290 TraceCheckUtils]: 10: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,799 INFO L290 TraceCheckUtils]: 9: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {18555#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_1305 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_36| v_ArrVal_1305) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:48:59,802 INFO L290 TraceCheckUtils]: 6: Hoare triple {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} is VALID [2022-02-20 23:48:59,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} is VALID [2022-02-20 23:48:59,803 INFO L290 TraceCheckUtils]: 4: Hoare triple {18376#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {18577#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_36| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_36|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_36|)))))} is VALID [2022-02-20 23:48:59,804 INFO L290 TraceCheckUtils]: 3: Hoare triple {18376#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {18376#true} is VALID [2022-02-20 23:48:59,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {18376#true} main_#t~short4#1 := main_~c1~0#1 < 5; {18376#true} is VALID [2022-02-20 23:48:59,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {18376#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {18376#true} is VALID [2022-02-20 23:48:59,804 INFO L290 TraceCheckUtils]: 0: Hoare triple {18376#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(14, 2); {18376#true} is VALID [2022-02-20 23:48:59,804 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:48:59,804 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:48:59,804 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [977771853] [2022-02-20 23:48:59,804 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:48:59,804 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2021132185] [2022-02-20 23:48:59,804 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2021132185] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:48:59,805 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:48:59,805 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 9 [2022-02-20 23:48:59,805 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [945168256] [2022-02-20 23:48:59,805 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:48:59,805 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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 36 [2022-02-20 23:48:59,805 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:48:59,805 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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:59,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:48:59,869 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:48:59,869 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:48:59,869 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:48:59,870 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:48:59,870 INFO L87 Difference]: Start difference. First operand 244 states and 341 transitions. Second operand has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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:49:00,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,610 INFO L93 Difference]: Finished difference Result 426 states and 589 transitions. [2022-02-20 23:49:00,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:49:00,610 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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 36 [2022-02-20 23:49:00,611 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:00,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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:49:00,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 193 transitions. [2022-02-20 23:49:00,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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:49:00,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 193 transitions. [2022-02-20 23:49:00,612 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 193 transitions. [2022-02-20 23:49:00,774 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:00,781 INFO L225 Difference]: With dead ends: 426 [2022-02-20 23:49:00,781 INFO L226 Difference]: Without dead ends: 426 [2022-02-20 23:49:00,781 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 65 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=61, Invalid=121, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:49:00,782 INFO L933 BasicCegarLoop]: 62 mSDtfsCounter, 182 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 214 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 182 SdHoareTripleChecker+Valid, 293 SdHoareTripleChecker+Invalid, 283 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 214 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 63 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:00,782 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [182 Valid, 293 Invalid, 283 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 214 Invalid, 0 Unknown, 63 Unchecked, 0.2s Time] [2022-02-20 23:49:00,783 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 426 states. [2022-02-20 23:49:00,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 426 to 302. [2022-02-20 23:49:00,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:00,787 INFO L82 GeneralOperation]: Start isEquivalent. First operand 426 states. Second operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,788 INFO L74 IsIncluded]: Start isIncluded. First operand 426 states. Second operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,788 INFO L87 Difference]: Start difference. First operand 426 states. Second operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,798 INFO L93 Difference]: Finished difference Result 426 states and 589 transitions. [2022-02-20 23:49:00,798 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 589 transitions. [2022-02-20 23:49:00,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:00,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:00,799 INFO L74 IsIncluded]: Start isIncluded. First operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 426 states. [2022-02-20 23:49:00,799 INFO L87 Difference]: Start difference. First operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 426 states. [2022-02-20 23:49:00,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:00,810 INFO L93 Difference]: Finished difference Result 426 states and 589 transitions. [2022-02-20 23:49:00,810 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 589 transitions. [2022-02-20 23:49:00,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:00,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:00,812 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:00,812 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:00,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 302 states, 285 states have (on average 1.4421052631578948) internal successors, (411), 301 states have internal predecessors, (411), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:00,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 302 states to 302 states and 411 transitions. [2022-02-20 23:49:00,817 INFO L78 Accepts]: Start accepts. Automaton has 302 states and 411 transitions. Word has length 36 [2022-02-20 23:49:00,817 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:00,817 INFO L470 AbstractCegarLoop]: Abstraction has 302 states and 411 transitions. [2022-02-20 23:49:00,818 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 7.555555555555555) internal successors, (68), 10 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:49:00,818 INFO L276 IsEmpty]: Start isEmpty. Operand 302 states and 411 transitions. [2022-02-20 23:49:00,818 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 23:49:00,818 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:00,818 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:00,841 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:01,035 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-02-20 23:49:01,035 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:01,035 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:01,036 INFO L85 PathProgramCache]: Analyzing trace with hash 234396292, now seen corresponding path program 1 times [2022-02-20 23:49:01,036 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:01,036 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1465988824] [2022-02-20 23:49:01,036 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:01,036 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:01,057 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:01,058 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1245174115] [2022-02-20 23:49:01,058 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:01,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:01,058 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:01,059 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:01,087 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-20 23:49:01,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,182 INFO L263 TraceCheckSpWp]: Trace formula consists of 308 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:49:01,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:01,194 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:01,349 INFO L290 TraceCheckUtils]: 0: Hoare triple {20189#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(14, 2); {20189#true} is VALID [2022-02-20 23:49:01,349 INFO L290 TraceCheckUtils]: 1: Hoare triple {20189#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {20189#true} is VALID [2022-02-20 23:49:01,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {20189#true} main_#t~short4#1 := main_~c1~0#1 < 5; {20189#true} is VALID [2022-02-20 23:49:01,349 INFO L290 TraceCheckUtils]: 3: Hoare triple {20189#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {20189#true} is VALID [2022-02-20 23:49:01,350 INFO L290 TraceCheckUtils]: 4: Hoare triple {20189#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,350 INFO L290 TraceCheckUtils]: 6: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,352 INFO L290 TraceCheckUtils]: 10: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,353 INFO L290 TraceCheckUtils]: 11: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,353 INFO L290 TraceCheckUtils]: 12: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_#t~short8#1 := main_~c2~0#1 < 3; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,354 INFO L290 TraceCheckUtils]: 15: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,354 INFO L290 TraceCheckUtils]: 16: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,354 INFO L290 TraceCheckUtils]: 17: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,355 INFO L290 TraceCheckUtils]: 19: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,355 INFO L290 TraceCheckUtils]: 20: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,355 INFO L290 TraceCheckUtils]: 21: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,355 INFO L290 TraceCheckUtils]: 22: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,356 INFO L290 TraceCheckUtils]: 23: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,357 INFO L290 TraceCheckUtils]: 25: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,357 INFO L290 TraceCheckUtils]: 26: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_#t~short8#1 := main_~c2~0#1 < 3; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,357 INFO L290 TraceCheckUtils]: 27: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,358 INFO L290 TraceCheckUtils]: 29: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_~c2~0#1 := 0; {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:49:01,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {20206#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:49:01,358 INFO L290 TraceCheckUtils]: 31: Hoare triple {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} main_#t~short4#1 := main_~c1~0#1 < 5; {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:49:01,359 INFO L290 TraceCheckUtils]: 32: Hoare triple {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:49:01,359 INFO L290 TraceCheckUtils]: 33: Hoare triple {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:49:01,359 INFO L290 TraceCheckUtils]: 34: Hoare triple {20285#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {20298#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.offset| |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:49:01,360 INFO L290 TraceCheckUtils]: 35: Hoare triple {20298#(and (<= 0 |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.offset| |ULTIMATE.start_main_~x~1#1.offset|))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {20302#(and (<= 0 |ULTIMATE.start_main_~x~1#1.offset|) (<= (+ 16 |ULTIMATE.start_main_~x~1#1.offset|) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:49:01,360 INFO L290 TraceCheckUtils]: 36: Hoare triple {20302#(and (<= 0 |ULTIMATE.start_main_~x~1#1.offset|) (<= (+ 16 |ULTIMATE.start_main_~x~1#1.offset|) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {20302#(and (<= 0 |ULTIMATE.start_main_~x~1#1.offset|) (<= (+ 16 |ULTIMATE.start_main_~x~1#1.offset|) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:49:01,361 INFO L290 TraceCheckUtils]: 37: Hoare triple {20302#(and (<= 0 |ULTIMATE.start_main_~x~1#1.offset|) (<= (+ 16 |ULTIMATE.start_main_~x~1#1.offset|) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} assume !(4 + main_~x~1#1.offset <= #length[main_~x~1#1.base] && 0 <= main_~x~1#1.offset); {20190#false} is VALID [2022-02-20 23:49:01,362 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 23:49:01,362 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:01,362 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:01,362 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1465988824] [2022-02-20 23:49:01,362 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:01,362 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1245174115] [2022-02-20 23:49:01,362 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1245174115] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:01,362 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:01,362 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:49:01,362 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2043376934] [2022-02-20 23:49:01,362 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:01,362 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:49:01,363 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:01,363 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,391 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:01,391 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:49:01,391 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:01,392 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:49:01,392 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:49:01,392 INFO L87 Difference]: Start difference. First operand 302 states and 411 transitions. Second operand has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,711 INFO L93 Difference]: Finished difference Result 318 states and 416 transitions. [2022-02-20 23:49:01,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:49:01,711 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:49:01,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:01,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 110 transitions. [2022-02-20 23:49:01,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 110 transitions. [2022-02-20 23:49:01,712 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 110 transitions. [2022-02-20 23:49:01,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:01,811 INFO L225 Difference]: With dead ends: 318 [2022-02-20 23:49:01,811 INFO L226 Difference]: Without dead ends: 318 [2022-02-20 23:49:01,811 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:49:01,812 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 141 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:01,813 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [141 Valid, 135 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:49:01,814 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 318 states. [2022-02-20 23:49:01,820 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 318 to 302. [2022-02-20 23:49:01,821 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:01,821 INFO L82 GeneralOperation]: Start isEquivalent. First operand 318 states. Second operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 0 states have call 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,821 INFO L74 IsIncluded]: Start isIncluded. First operand 318 states. Second operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 0 states have call 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,822 INFO L87 Difference]: Start difference. First operand 318 states. Second operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 0 states have call 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,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,831 INFO L93 Difference]: Finished difference Result 318 states and 416 transitions. [2022-02-20 23:49:01,831 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 416 transitions. [2022-02-20 23:49:01,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 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 318 states. [2022-02-20 23:49:01,832 INFO L87 Difference]: Start difference. First operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 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 318 states. [2022-02-20 23:49:01,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:01,836 INFO L93 Difference]: Finished difference Result 318 states and 416 transitions. [2022-02-20 23:49:01,836 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 416 transitions. [2022-02-20 23:49:01,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:01,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:01,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:01,837 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:01,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 302 states, 285 states have (on average 1.4350877192982456) internal successors, (409), 301 states have internal predecessors, (409), 0 states have call successors, (0), 0 states have call 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,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 302 states to 302 states and 409 transitions. [2022-02-20 23:49:01,840 INFO L78 Accepts]: Start accepts. Automaton has 302 states and 409 transitions. Word has length 38 [2022-02-20 23:49:01,841 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:01,841 INFO L470 AbstractCegarLoop]: Abstraction has 302 states and 409 transitions. [2022-02-20 23:49:01,841 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 7.2) internal successors, (36), 6 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:01,841 INFO L276 IsEmpty]: Start isEmpty. Operand 302 states and 409 transitions. [2022-02-20 23:49:01,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:49:01,841 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:01,841 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:01,860 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:02,055 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-02-20 23:49:02,055 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr39ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:02,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:02,056 INFO L85 PathProgramCache]: Analyzing trace with hash -716826511, now seen corresponding path program 1 times [2022-02-20 23:49:02,056 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:02,056 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1758177079] [2022-02-20 23:49:02,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:02,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:02,079 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:02,080 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1420563504] [2022-02-20 23:49:02,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:02,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:02,080 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:02,081 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:02,086 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-02-20 23:49:02,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:02,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 324 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:49:02,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:02,246 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:02,344 INFO L290 TraceCheckUtils]: 0: Hoare triple {21573#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(14, 2); {21573#true} is VALID [2022-02-20 23:49:02,344 INFO L290 TraceCheckUtils]: 1: Hoare triple {21573#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {21573#true} is VALID [2022-02-20 23:49:02,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {21573#true} main_#t~short4#1 := main_~c1~0#1 < 5; {21573#true} is VALID [2022-02-20 23:49:02,344 INFO L290 TraceCheckUtils]: 3: Hoare triple {21573#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {21573#true} is VALID [2022-02-20 23:49:02,344 INFO L290 TraceCheckUtils]: 4: Hoare triple {21573#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,345 INFO L290 TraceCheckUtils]: 6: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,345 INFO L290 TraceCheckUtils]: 7: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,345 INFO L290 TraceCheckUtils]: 8: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,346 INFO L290 TraceCheckUtils]: 9: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,346 INFO L290 TraceCheckUtils]: 11: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,346 INFO L290 TraceCheckUtils]: 12: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_#t~short8#1 := main_~c2~0#1 < 3; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,347 INFO L290 TraceCheckUtils]: 14: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,348 INFO L290 TraceCheckUtils]: 17: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,348 INFO L290 TraceCheckUtils]: 18: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,349 INFO L290 TraceCheckUtils]: 21: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,349 INFO L290 TraceCheckUtils]: 22: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_#t~short8#1 := main_~c2~0#1 < 3; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,350 INFO L290 TraceCheckUtils]: 27: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,350 INFO L290 TraceCheckUtils]: 28: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~c2~0#1 := 0; {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,351 INFO L290 TraceCheckUtils]: 30: Hoare triple {21590#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,352 INFO L290 TraceCheckUtils]: 31: Hoare triple {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} main_#t~short4#1 := main_~c1~0#1 < 5; {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,352 INFO L290 TraceCheckUtils]: 32: Hoare triple {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,352 INFO L290 TraceCheckUtils]: 33: Hoare triple {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:49:02,354 INFO L290 TraceCheckUtils]: 34: Hoare triple {21669#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,355 INFO L290 TraceCheckUtils]: 36: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,356 INFO L290 TraceCheckUtils]: 37: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,356 INFO L290 TraceCheckUtils]: 38: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,356 INFO L290 TraceCheckUtils]: 39: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:49:02,356 INFO L290 TraceCheckUtils]: 40: Hoare triple {21682#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} assume !(0 == main_~x~1#1.offset); {21574#false} is VALID [2022-02-20 23:49:02,357 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 23:49:02,357 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:02,357 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:02,357 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1758177079] [2022-02-20 23:49:02,357 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:02,357 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1420563504] [2022-02-20 23:49:02,357 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1420563504] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:02,357 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:02,357 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:49:02,357 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1435072219] [2022-02-20 23:49:02,357 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:02,358 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:02,358 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:02,358 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:02,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:02,388 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:49:02,388 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:02,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:49:02,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:02,388 INFO L87 Difference]: Start difference. First operand 302 states and 409 transitions. Second operand has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:02,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,568 INFO L93 Difference]: Finished difference Result 310 states and 405 transitions. [2022-02-20 23:49:02,568 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:49:02,568 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:02,568 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:02,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:02,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 102 transitions. [2022-02-20 23:49:02,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:02,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 102 transitions. [2022-02-20 23:49:02,569 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 102 transitions. [2022-02-20 23:49:02,651 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:02,655 INFO L225 Difference]: With dead ends: 310 [2022-02-20 23:49:02,655 INFO L226 Difference]: Without dead ends: 310 [2022-02-20 23:49:02,655 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 38 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:49:02,655 INFO L933 BasicCegarLoop]: 58 mSDtfsCounter, 129 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 129 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:02,655 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [129 Valid, 138 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:02,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 310 states. [2022-02-20 23:49:02,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 310 to 282. [2022-02-20 23:49:02,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:02,659 INFO L82 GeneralOperation]: Start isEquivalent. First operand 310 states. Second operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 0 states have call 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:02,659 INFO L74 IsIncluded]: Start isIncluded. First operand 310 states. Second operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 0 states have call 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:02,659 INFO L87 Difference]: Start difference. First operand 310 states. Second operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 0 states have call 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:02,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,663 INFO L93 Difference]: Finished difference Result 310 states and 405 transitions. [2022-02-20 23:49:02,663 INFO L276 IsEmpty]: Start isEmpty. Operand 310 states and 405 transitions. [2022-02-20 23:49:02,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:02,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:02,664 INFO L74 IsIncluded]: Start isIncluded. First operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 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 310 states. [2022-02-20 23:49:02,664 INFO L87 Difference]: Start difference. First operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 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 310 states. [2022-02-20 23:49:02,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:02,668 INFO L93 Difference]: Finished difference Result 310 states and 405 transitions. [2022-02-20 23:49:02,668 INFO L276 IsEmpty]: Start isEmpty. Operand 310 states and 405 transitions. [2022-02-20 23:49:02,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:02,669 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:02,669 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:02,669 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:02,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 282 states, 265 states have (on average 1.3962264150943395) internal successors, (370), 281 states have internal predecessors, (370), 0 states have call successors, (0), 0 states have call 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:02,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 282 states to 282 states and 370 transitions. [2022-02-20 23:49:02,672 INFO L78 Accepts]: Start accepts. Automaton has 282 states and 370 transitions. Word has length 41 [2022-02-20 23:49:02,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:02,672 INFO L470 AbstractCegarLoop]: Abstraction has 282 states and 370 transitions. [2022-02-20 23:49:02,672 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 9.75) internal successors, (39), 5 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:02,673 INFO L276 IsEmpty]: Start isEmpty. Operand 282 states and 370 transitions. [2022-02-20 23:49:02,673 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:49:02,673 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:02,673 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:02,691 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:02,890 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-02-20 23:49:02,890 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:02,890 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:02,891 INFO L85 PathProgramCache]: Analyzing trace with hash -716826470, now seen corresponding path program 1 times [2022-02-20 23:49:02,891 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:02,891 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1122385630] [2022-02-20 23:49:02,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:02,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:02,913 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:02,913 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1821455138] [2022-02-20 23:49:02,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:02,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:02,914 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:02,915 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:02,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-02-20 23:49:03,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:03,054 INFO L263 TraceCheckSpWp]: Trace formula consists of 325 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:49:03,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:03,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:03,104 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:49:03,167 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:03,260 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 17 treesize of output 9 [2022-02-20 23:49:03,274 INFO L290 TraceCheckUtils]: 0: Hoare triple {22919#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(14, 2); {22919#true} is VALID [2022-02-20 23:49:03,274 INFO L290 TraceCheckUtils]: 1: Hoare triple {22919#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {22919#true} is VALID [2022-02-20 23:49:03,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {22919#true} main_#t~short4#1 := main_~c1~0#1 < 5; {22919#true} is VALID [2022-02-20 23:49:03,274 INFO L290 TraceCheckUtils]: 3: Hoare triple {22919#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {22919#true} is VALID [2022-02-20 23:49:03,275 INFO L290 TraceCheckUtils]: 4: Hoare triple {22919#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,275 INFO L290 TraceCheckUtils]: 5: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,275 INFO L290 TraceCheckUtils]: 6: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,276 INFO L290 TraceCheckUtils]: 7: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,276 INFO L290 TraceCheckUtils]: 8: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,276 INFO L290 TraceCheckUtils]: 9: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,277 INFO L290 TraceCheckUtils]: 10: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,277 INFO L290 TraceCheckUtils]: 11: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,277 INFO L290 TraceCheckUtils]: 12: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_#t~short8#1 := main_~c2~0#1 < 3; {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,278 INFO L290 TraceCheckUtils]: 13: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:03,279 INFO L290 TraceCheckUtils]: 14: Hoare triple {22936#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,280 INFO L290 TraceCheckUtils]: 15: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,280 INFO L290 TraceCheckUtils]: 16: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,281 INFO L290 TraceCheckUtils]: 17: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,281 INFO L290 TraceCheckUtils]: 18: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,282 INFO L290 TraceCheckUtils]: 19: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,283 INFO L290 TraceCheckUtils]: 21: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,283 INFO L290 TraceCheckUtils]: 22: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,284 INFO L290 TraceCheckUtils]: 23: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:49:03,284 INFO L290 TraceCheckUtils]: 24: Hoare triple {22967#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,285 INFO L290 TraceCheckUtils]: 25: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,285 INFO L290 TraceCheckUtils]: 26: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} main_#t~short8#1 := main_~c2~0#1 < 3; {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,286 INFO L290 TraceCheckUtils]: 27: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,286 INFO L290 TraceCheckUtils]: 28: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,287 INFO L290 TraceCheckUtils]: 29: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} main_~c2~0#1 := 0; {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:03,287 INFO L290 TraceCheckUtils]: 30: Hoare triple {22998#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:03,287 INFO L290 TraceCheckUtils]: 31: Hoare triple {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:03,288 INFO L290 TraceCheckUtils]: 32: Hoare triple {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:03,288 INFO L290 TraceCheckUtils]: 33: Hoare triple {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:03,289 INFO L290 TraceCheckUtils]: 34: Hoare triple {23017#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} is VALID [2022-02-20 23:49:03,289 INFO L290 TraceCheckUtils]: 35: Hoare triple {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} is VALID [2022-02-20 23:49:03,290 INFO L290 TraceCheckUtils]: 36: Hoare triple {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} is VALID [2022-02-20 23:49:03,290 INFO L290 TraceCheckUtils]: 37: Hoare triple {23030#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 1))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {23040#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} is VALID [2022-02-20 23:49:03,290 INFO L290 TraceCheckUtils]: 38: Hoare triple {23040#(= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {23044#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:49:03,291 INFO L290 TraceCheckUtils]: 39: Hoare triple {23044#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {23044#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:49:03,291 INFO L290 TraceCheckUtils]: 40: Hoare triple {23044#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {22920#false} is VALID [2022-02-20 23:49:03,291 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:03,292 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:03,292 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:03,292 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1122385630] [2022-02-20 23:49:03,292 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:03,292 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1821455138] [2022-02-20 23:49:03,292 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1821455138] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:03,292 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:03,292 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:49:03,292 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1845935985] [2022-02-20 23:49:03,293 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:03,293 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:03,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:03,293 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:03,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:03,340 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:49:03,340 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:03,340 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:49:03,340 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:49:03,340 INFO L87 Difference]: Start difference. First operand 282 states and 370 transitions. Second operand has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:04,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:04,223 INFO L93 Difference]: Finished difference Result 351 states and 444 transitions. [2022-02-20 23:49:04,223 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:49:04,223 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:04,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:04,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:04,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 162 transitions. [2022-02-20 23:49:04,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:04,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 162 transitions. [2022-02-20 23:49:04,224 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 162 transitions. [2022-02-20 23:49:04,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:04,368 INFO L225 Difference]: With dead ends: 351 [2022-02-20 23:49:04,368 INFO L226 Difference]: Without dead ends: 351 [2022-02-20 23:49:04,369 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=81, Invalid=261, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:49:04,369 INFO L933 BasicCegarLoop]: 45 mSDtfsCounter, 218 mSDsluCounter, 206 mSDsCounter, 0 mSdLazyCounter, 352 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 218 SdHoareTripleChecker+Valid, 251 SdHoareTripleChecker+Invalid, 380 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 352 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:04,369 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [218 Valid, 251 Invalid, 380 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 352 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:49:04,369 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 351 states. [2022-02-20 23:49:04,372 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 351 to 293. [2022-02-20 23:49:04,372 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:04,373 INFO L82 GeneralOperation]: Start isEquivalent. First operand 351 states. Second operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 0 states have call 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:04,373 INFO L74 IsIncluded]: Start isIncluded. First operand 351 states. Second operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 0 states have call 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:04,373 INFO L87 Difference]: Start difference. First operand 351 states. Second operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 0 states have call 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:04,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:04,377 INFO L93 Difference]: Finished difference Result 351 states and 444 transitions. [2022-02-20 23:49:04,378 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 444 transitions. [2022-02-20 23:49:04,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:04,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:04,378 INFO L74 IsIncluded]: Start isIncluded. First operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 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 351 states. [2022-02-20 23:49:04,379 INFO L87 Difference]: Start difference. First operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 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 351 states. [2022-02-20 23:49:04,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:04,383 INFO L93 Difference]: Finished difference Result 351 states and 444 transitions. [2022-02-20 23:49:04,383 INFO L276 IsEmpty]: Start isEmpty. Operand 351 states and 444 transitions. [2022-02-20 23:49:04,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:04,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:04,384 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:04,384 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:04,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 293 states, 276 states have (on average 1.3985507246376812) internal successors, (386), 292 states have internal predecessors, (386), 0 states have call successors, (0), 0 states have call 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:04,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 293 states to 293 states and 386 transitions. [2022-02-20 23:49:04,387 INFO L78 Accepts]: Start accepts. Automaton has 293 states and 386 transitions. Word has length 41 [2022-02-20 23:49:04,387 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:04,387 INFO L470 AbstractCegarLoop]: Abstraction has 293 states and 386 transitions. [2022-02-20 23:49:04,388 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 5.125) internal successors, (41), 9 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:04,388 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 386 transitions. [2022-02-20 23:49:04,388 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:49:04,388 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:04,388 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:04,405 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:04,598 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-02-20 23:49:04,598 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr33REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:04,598 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:04,599 INFO L85 PathProgramCache]: Analyzing trace with hash -716826469, now seen corresponding path program 1 times [2022-02-20 23:49:04,599 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:04,599 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1196164290] [2022-02-20 23:49:04,599 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:04,599 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:04,622 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:04,622 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [939777497] [2022-02-20 23:49:04,622 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:04,622 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:04,622 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:04,623 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:04,624 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-02-20 23:49:04,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:04,769 INFO L263 TraceCheckSpWp]: Trace formula consists of 325 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:49:04,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:04,780 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:04,896 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:04,903 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:05,084 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 17 treesize of output 9 [2022-02-20 23:49:05,091 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:49:05,119 INFO L290 TraceCheckUtils]: 0: Hoare triple {24417#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(14, 2); {24417#true} is VALID [2022-02-20 23:49:05,119 INFO L290 TraceCheckUtils]: 1: Hoare triple {24417#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {24417#true} is VALID [2022-02-20 23:49:05,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {24417#true} main_#t~short4#1 := main_~c1~0#1 < 5; {24417#true} is VALID [2022-02-20 23:49:05,119 INFO L290 TraceCheckUtils]: 3: Hoare triple {24417#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {24417#true} is VALID [2022-02-20 23:49:05,120 INFO L290 TraceCheckUtils]: 4: Hoare triple {24417#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,120 INFO L290 TraceCheckUtils]: 6: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,121 INFO L290 TraceCheckUtils]: 8: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,121 INFO L290 TraceCheckUtils]: 9: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,121 INFO L290 TraceCheckUtils]: 10: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,121 INFO L290 TraceCheckUtils]: 11: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,122 INFO L290 TraceCheckUtils]: 12: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_#t~short8#1 := main_~c2~0#1 < 3; {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,122 INFO L290 TraceCheckUtils]: 13: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:05,122 INFO L290 TraceCheckUtils]: 14: Hoare triple {24434#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,123 INFO L290 TraceCheckUtils]: 15: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,124 INFO L290 TraceCheckUtils]: 17: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,124 INFO L290 TraceCheckUtils]: 18: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,124 INFO L290 TraceCheckUtils]: 19: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,125 INFO L290 TraceCheckUtils]: 20: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,125 INFO L290 TraceCheckUtils]: 21: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,125 INFO L290 TraceCheckUtils]: 22: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,126 INFO L290 TraceCheckUtils]: 23: Hoare triple {24465#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {24493#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} is VALID [2022-02-20 23:49:05,127 INFO L290 TraceCheckUtils]: 24: Hoare triple {24493#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,127 INFO L290 TraceCheckUtils]: 25: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,128 INFO L290 TraceCheckUtils]: 26: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} main_#t~short8#1 := main_~c2~0#1 < 3; {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,128 INFO L290 TraceCheckUtils]: 27: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,129 INFO L290 TraceCheckUtils]: 28: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} main_~c2~0#1 := 0; {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} is VALID [2022-02-20 23:49:05,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {24497#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,130 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,130 INFO L290 TraceCheckUtils]: 32: Hoare triple {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,130 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:05,131 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(and (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:05,131 INFO L290 TraceCheckUtils]: 35: Hoare triple {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:05,132 INFO L290 TraceCheckUtils]: 36: Hoare triple {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:05,132 INFO L290 TraceCheckUtils]: 37: Hoare triple {24529#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (<= 12 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {24539#(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:49:05,133 INFO L290 TraceCheckUtils]: 38: Hoare triple {24539#(and (<= 12 (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|)) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {24543#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~y~1#1.base|)))} is VALID [2022-02-20 23:49:05,133 INFO L290 TraceCheckUtils]: 39: Hoare triple {24543#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~y~1#1.base|)))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {24543#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~y~1#1.base|)))} is VALID [2022-02-20 23:49:05,133 INFO L290 TraceCheckUtils]: 40: Hoare triple {24543#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~y~1#1.base|)))} assume !(4 + main_~y~1#1.offset <= #length[main_~y~1#1.base] && 0 <= main_~y~1#1.offset); {24418#false} is VALID [2022-02-20 23:49:05,134 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:05,134 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:05,134 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:05,134 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1196164290] [2022-02-20 23:49:05,134 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:05,134 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [939777497] [2022-02-20 23:49:05,134 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [939777497] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:05,134 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:05,134 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:49:05,134 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1061951290] [2022-02-20 23:49:05,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:05,134 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:05,134 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:05,134 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:05,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:05,168 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:49:05,168 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:05,168 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:49:05,169 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:49:05,169 INFO L87 Difference]: Start difference. First operand 293 states and 386 transitions. Second operand has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:06,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:06,447 INFO L93 Difference]: Finished difference Result 388 states and 495 transitions. [2022-02-20 23:49:06,447 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:49:06,447 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 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 41 [2022-02-20 23:49:06,447 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:06,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:06,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 192 transitions. [2022-02-20 23:49:06,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:06,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 192 transitions. [2022-02-20 23:49:06,451 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 192 transitions. [2022-02-20 23:49:06,626 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 192 edges. 192 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:06,631 INFO L225 Difference]: With dead ends: 388 [2022-02-20 23:49:06,631 INFO L226 Difference]: Without dead ends: 388 [2022-02-20 23:49:06,631 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=90, Invalid=252, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:49:06,632 INFO L933 BasicCegarLoop]: 64 mSDtfsCounter, 256 mSDsluCounter, 322 mSDsCounter, 0 mSdLazyCounter, 423 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 256 SdHoareTripleChecker+Valid, 386 SdHoareTripleChecker+Invalid, 434 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 423 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:06,632 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [256 Valid, 386 Invalid, 434 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 423 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:49:06,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 388 states. [2022-02-20 23:49:06,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 388 to 293. [2022-02-20 23:49:06,640 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:06,640 INFO L82 GeneralOperation]: Start isEquivalent. First operand 388 states. Second operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 0 states have call 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:06,641 INFO L74 IsIncluded]: Start isIncluded. First operand 388 states. Second operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 0 states have call 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:06,641 INFO L87 Difference]: Start difference. First operand 388 states. Second operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 0 states have call 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:06,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:06,647 INFO L93 Difference]: Finished difference Result 388 states and 495 transitions. [2022-02-20 23:49:06,647 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 495 transitions. [2022-02-20 23:49:06,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:06,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:06,648 INFO L74 IsIncluded]: Start isIncluded. First operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 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 388 states. [2022-02-20 23:49:06,649 INFO L87 Difference]: Start difference. First operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 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 388 states. [2022-02-20 23:49:06,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:06,655 INFO L93 Difference]: Finished difference Result 388 states and 495 transitions. [2022-02-20 23:49:06,655 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 495 transitions. [2022-02-20 23:49:06,655 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:06,655 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:06,655 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:06,655 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:06,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 293 states, 276 states have (on average 1.391304347826087) internal successors, (384), 292 states have internal predecessors, (384), 0 states have call successors, (0), 0 states have call 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:06,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 293 states to 293 states and 384 transitions. [2022-02-20 23:49:06,659 INFO L78 Accepts]: Start accepts. Automaton has 293 states and 384 transitions. Word has length 41 [2022-02-20 23:49:06,659 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:06,660 INFO L470 AbstractCegarLoop]: Abstraction has 293 states and 384 transitions. [2022-02-20 23:49:06,660 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 4.555555555555555) internal successors, (41), 10 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call 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:06,660 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 384 transitions. [2022-02-20 23:49:06,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 23:49:06,660 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:06,660 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:06,678 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:06,867 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-02-20 23:49:06,867 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr34REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:06,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:06,868 INFO L85 PathProgramCache]: Analyzing trace with hash -1675466949, now seen corresponding path program 1 times [2022-02-20 23:49:06,868 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:06,868 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [182372753] [2022-02-20 23:49:06,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:06,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:06,894 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:06,895 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [624516460] [2022-02-20 23:49:06,895 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:06,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:06,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:06,896 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:06,919 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-02-20 23:49:07,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,061 INFO L263 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:49:07,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 0: Hoare triple {26025#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(14, 2); {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {26025#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {26025#true} main_#t~short4#1 := main_~c1~0#1 < 5; {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 3: Hoare triple {26025#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 4: Hoare triple {26025#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 5: Hoare triple {26025#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26025#true} is VALID [2022-02-20 23:49:07,130 INFO L290 TraceCheckUtils]: 6: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 10: Hoare triple {26025#true} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 11: Hoare triple {26025#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 12: Hoare triple {26025#true} main_#t~short8#1 := main_~c2~0#1 < 3; {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 13: Hoare triple {26025#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 14: Hoare triple {26025#true} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,131 INFO L290 TraceCheckUtils]: 15: Hoare triple {26025#true} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {26025#true} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 17: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {26025#true} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 19: Hoare triple {26025#true} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 20: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 21: Hoare triple {26025#true} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 22: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {26025#true} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {26025#true} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {26025#true} is VALID [2022-02-20 23:49:07,132 INFO L290 TraceCheckUtils]: 25: Hoare triple {26025#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 26: Hoare triple {26025#true} main_#t~short8#1 := main_~c2~0#1 < 3; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 27: Hoare triple {26025#true} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 28: Hoare triple {26025#true} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 29: Hoare triple {26025#true} main_~c2~0#1 := 0; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 30: Hoare triple {26025#true} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 31: Hoare triple {26025#true} main_#t~short4#1 := main_~c1~0#1 < 5; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 32: Hoare triple {26025#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 33: Hoare triple {26025#true} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {26025#true} is VALID [2022-02-20 23:49:07,133 INFO L290 TraceCheckUtils]: 34: Hoare triple {26025#true} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,134 INFO L290 TraceCheckUtils]: 35: Hoare triple {26025#true} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {26025#true} is VALID [2022-02-20 23:49:07,134 INFO L290 TraceCheckUtils]: 36: Hoare triple {26025#true} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,134 INFO L290 TraceCheckUtils]: 37: Hoare triple {26025#true} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {26025#true} is VALID [2022-02-20 23:49:07,134 INFO L290 TraceCheckUtils]: 38: Hoare triple {26025#true} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {26025#true} is VALID [2022-02-20 23:49:07,134 INFO L290 TraceCheckUtils]: 39: Hoare triple {26025#true} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {26147#(= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)} is VALID [2022-02-20 23:49:07,135 INFO L290 TraceCheckUtils]: 40: Hoare triple {26147#(= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L579 {26151#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:49:07,135 INFO L290 TraceCheckUtils]: 41: Hoare triple {26151#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {26151#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:49:07,135 INFO L290 TraceCheckUtils]: 42: Hoare triple {26151#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} assume !(1 == #valid[main_~z~0#1.base]); {26026#false} is VALID [2022-02-20 23:49:07,135 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:49:07,135 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:07,136 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:07,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [182372753] [2022-02-20 23:49:07,136 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:07,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [624516460] [2022-02-20 23:49:07,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [624516460] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:07,136 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:07,136 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:49:07,136 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [901817961] [2022-02-20 23:49:07,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:07,137 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 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 43 [2022-02-20 23:49:07,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:07,137 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:07,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:07,170 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:49:07,170 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:07,170 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:49:07,170 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:49:07,170 INFO L87 Difference]: Start difference. First operand 293 states and 384 transitions. Second operand has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:07,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,340 INFO L93 Difference]: Finished difference Result 315 states and 407 transitions. [2022-02-20 23:49:07,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:49:07,340 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 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 43 [2022-02-20 23:49:07,340 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:07,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:07,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 81 transitions. [2022-02-20 23:49:07,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:07,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 81 transitions. [2022-02-20 23:49:07,341 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 81 transitions. [2022-02-20 23:49:07,405 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:07,408 INFO L225 Difference]: With dead ends: 315 [2022-02-20 23:49:07,408 INFO L226 Difference]: Without dead ends: 315 [2022-02-20 23:49:07,409 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:49:07,409 INFO L933 BasicCegarLoop]: 69 mSDtfsCounter, 17 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:07,409 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 162 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:49:07,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 315 states. [2022-02-20 23:49:07,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 315 to 291. [2022-02-20 23:49:07,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:07,413 INFO L82 GeneralOperation]: Start isEquivalent. First operand 315 states. Second operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 0 states have call 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:07,414 INFO L74 IsIncluded]: Start isIncluded. First operand 315 states. Second operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 0 states have call 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:07,414 INFO L87 Difference]: Start difference. First operand 315 states. Second operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 0 states have call 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:07,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,418 INFO L93 Difference]: Finished difference Result 315 states and 407 transitions. [2022-02-20 23:49:07,418 INFO L276 IsEmpty]: Start isEmpty. Operand 315 states and 407 transitions. [2022-02-20 23:49:07,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 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 315 states. [2022-02-20 23:49:07,419 INFO L87 Difference]: Start difference. First operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 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 315 states. [2022-02-20 23:49:07,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:07,423 INFO L93 Difference]: Finished difference Result 315 states and 407 transitions. [2022-02-20 23:49:07,423 INFO L276 IsEmpty]: Start isEmpty. Operand 315 states and 407 transitions. [2022-02-20 23:49:07,423 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:07,423 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:07,423 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:07,423 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:07,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 291 states, 276 states have (on average 1.358695652173913) internal successors, (375), 290 states have internal predecessors, (375), 0 states have call successors, (0), 0 states have call 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:07,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 291 states to 291 states and 375 transitions. [2022-02-20 23:49:07,427 INFO L78 Accepts]: Start accepts. Automaton has 291 states and 375 transitions. Word has length 43 [2022-02-20 23:49:07,427 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:07,427 INFO L470 AbstractCegarLoop]: Abstraction has 291 states and 375 transitions. [2022-02-20 23:49:07,427 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 13.0) internal successors, (39), 4 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call 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:07,427 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 375 transitions. [2022-02-20 23:49:07,428 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 23:49:07,428 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:07,428 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:07,445 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:07,643 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:07,644 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting ULTIMATE.startErr35REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:07,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:07,644 INFO L85 PathProgramCache]: Analyzing trace with hash -1675466948, now seen corresponding path program 1 times [2022-02-20 23:49:07,644 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:07,644 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1180347695] [2022-02-20 23:49:07,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:07,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:07,672 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 23:49:07,672 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [372271569] [2022-02-20 23:49:07,672 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:07,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:07,672 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:07,673 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:07,674 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-02-20 23:49:07,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,830 INFO L263 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 32 conjunts are in the unsatisfiable core [2022-02-20 23:49:07,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:07,844 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:07,962 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:07,969 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:08,144 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 23 treesize of output 15 [2022-02-20 23:49:08,150 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 19 treesize of output 11 [2022-02-20 23:49:08,253 INFO L290 TraceCheckUtils]: 0: Hoare triple {27395#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(14, 2); {27395#true} is VALID [2022-02-20 23:49:08,253 INFO L290 TraceCheckUtils]: 1: Hoare triple {27395#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {27395#true} is VALID [2022-02-20 23:49:08,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {27395#true} main_#t~short4#1 := main_~c1~0#1 < 5; {27395#true} is VALID [2022-02-20 23:49:08,254 INFO L290 TraceCheckUtils]: 3: Hoare triple {27395#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {27395#true} is VALID [2022-02-20 23:49:08,254 INFO L290 TraceCheckUtils]: 4: Hoare triple {27395#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,254 INFO L290 TraceCheckUtils]: 5: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,254 INFO L290 TraceCheckUtils]: 6: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,255 INFO L290 TraceCheckUtils]: 7: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,255 INFO L290 TraceCheckUtils]: 8: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,255 INFO L290 TraceCheckUtils]: 9: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,255 INFO L290 TraceCheckUtils]: 10: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,256 INFO L290 TraceCheckUtils]: 11: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,256 INFO L290 TraceCheckUtils]: 12: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_#t~short8#1 := main_~c2~0#1 < 3; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,256 INFO L290 TraceCheckUtils]: 13: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,256 INFO L290 TraceCheckUtils]: 14: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !!main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1;main_#t~post9#1 := main_~c2~0#1;main_~c2~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;havoc main_#t~malloc10#1.base, main_#t~malloc10#1.offset; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,257 INFO L290 TraceCheckUtils]: 15: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L553-2 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_#t~mem11#1.base, main_#t~mem11#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L555 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,257 INFO L290 TraceCheckUtils]: 18: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,258 INFO L290 TraceCheckUtils]: 19: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L556 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,258 INFO L290 TraceCheckUtils]: 20: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem12#1.base, 4 + main_#t~mem12#1.offset, 4); srcloc: L556-1 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,258 INFO L290 TraceCheckUtils]: 21: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,258 INFO L290 TraceCheckUtils]: 22: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L557 {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:08,259 INFO L290 TraceCheckUtils]: 23: Hoare triple {27412#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(main_~c2~0#1 * main_~c1~0#1, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L557-1 {27470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} is VALID [2022-02-20 23:49:08,261 INFO L290 TraceCheckUtils]: 24: Hoare triple {27470#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ 12 |ULTIMATE.start_main_~y~0#1.offset|) (select |#length| |ULTIMATE.start_main_~y~0#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L558 {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,261 INFO L290 TraceCheckUtils]: 25: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,261 INFO L290 TraceCheckUtils]: 26: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} main_#t~short8#1 := main_~c2~0#1 < 3; {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,262 INFO L290 TraceCheckUtils]: 27: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,262 INFO L290 TraceCheckUtils]: 28: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,263 INFO L290 TraceCheckUtils]: 29: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} main_~c2~0#1 := 0; {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} is VALID [2022-02-20 23:49:08,263 INFO L290 TraceCheckUtils]: 30: Hoare triple {27474#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:08,263 INFO L290 TraceCheckUtils]: 31: Hoare triple {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:08,264 INFO L290 TraceCheckUtils]: 32: Hoare triple {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:08,264 INFO L290 TraceCheckUtils]: 33: Hoare triple {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:08,265 INFO L290 TraceCheckUtils]: 34: Hoare triple {27493#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:08,265 INFO L290 TraceCheckUtils]: 35: Hoare triple {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:08,265 INFO L290 TraceCheckUtils]: 36: Hoare triple {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} is VALID [2022-02-20 23:49:08,266 INFO L290 TraceCheckUtils]: 37: Hoare triple {27506#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 12) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {27516#(<= (+ 12 |ULTIMATE.start_main_#t~mem15#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|))} is VALID [2022-02-20 23:49:08,266 INFO L290 TraceCheckUtils]: 38: Hoare triple {27516#(<= (+ 12 |ULTIMATE.start_main_#t~mem15#1.offset|) (select |#length| |ULTIMATE.start_main_#t~mem15#1.base|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {27520#(<= (+ 12 |ULTIMATE.start_main_~y~1#1.offset|) (select |#length| |ULTIMATE.start_main_~y~1#1.base|))} is VALID [2022-02-20 23:49:08,267 INFO L290 TraceCheckUtils]: 39: Hoare triple {27520#(<= (+ 12 |ULTIMATE.start_main_~y~1#1.offset|) (select |#length| |ULTIMATE.start_main_~y~1#1.base|))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {27524#(and (= |ULTIMATE.start_main_~y~1#1.offset| |ULTIMATE.start_main_~z~0#1.offset|) (<= (+ 12 |ULTIMATE.start_main_~y~1#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)))} is VALID [2022-02-20 23:49:08,267 INFO L290 TraceCheckUtils]: 40: Hoare triple {27524#(and (= |ULTIMATE.start_main_~y~1#1.offset| |ULTIMATE.start_main_~z~0#1.offset|) (<= (+ 12 |ULTIMATE.start_main_~y~1#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)))} SUMMARY for call main_#t~mem16#1.base, main_#t~mem16#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L579 {27528#(and (<= (+ 12 |ULTIMATE.start_main_~z~0#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)) (<= 0 |ULTIMATE.start_main_~z~0#1.offset|))} is VALID [2022-02-20 23:49:08,267 INFO L290 TraceCheckUtils]: 41: Hoare triple {27528#(and (<= (+ 12 |ULTIMATE.start_main_~z~0#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)) (<= 0 |ULTIMATE.start_main_~z~0#1.offset|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem16#1.base, main_#t~mem16#1.offset;havoc main_#t~mem16#1.base, main_#t~mem16#1.offset; {27528#(and (<= (+ 12 |ULTIMATE.start_main_~z~0#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)) (<= 0 |ULTIMATE.start_main_~z~0#1.offset|))} is VALID [2022-02-20 23:49:08,268 INFO L290 TraceCheckUtils]: 42: Hoare triple {27528#(and (<= (+ 12 |ULTIMATE.start_main_~z~0#1.offset|) (select |#length| |ULTIMATE.start_main_~z~0#1.base|)) (<= 0 |ULTIMATE.start_main_~z~0#1.offset|))} assume !(4 + (8 + main_~z~0#1.offset) <= #length[main_~z~0#1.base] && 0 <= 8 + main_~z~0#1.offset); {27396#false} is VALID [2022-02-20 23:49:08,269 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:08,269 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:49:08,269 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:08,269 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1180347695] [2022-02-20 23:49:08,269 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 23:49:08,269 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [372271569] [2022-02-20 23:49:08,269 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [372271569] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:49:08,269 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:49:08,269 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 23:49:08,269 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1184647811] [2022-02-20 23:49:08,269 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:49:08,270 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 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 43 [2022-02-20 23:49:08,270 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:08,270 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call 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:08,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:08,310 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 23:49:08,310 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:08,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 23:49:08,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=89, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:49:08,311 INFO L87 Difference]: Start difference. First operand 291 states and 375 transitions. Second operand has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call 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:10,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,387 INFO L93 Difference]: Finished difference Result 434 states and 542 transitions. [2022-02-20 23:49:10,388 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:49:10,388 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 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 43 [2022-02-20 23:49:10,388 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:10,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call 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:10,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 209 transitions. [2022-02-20 23:49:10,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call 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:10,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 209 transitions. [2022-02-20 23:49:10,389 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 209 transitions. [2022-02-20 23:49:10,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:10,617 INFO L225 Difference]: With dead ends: 434 [2022-02-20 23:49:10,617 INFO L226 Difference]: Without dead ends: 434 [2022-02-20 23:49:10,617 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=101, Invalid=361, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:49:10,618 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 278 mSDsluCounter, 421 mSDsCounter, 0 mSdLazyCounter, 559 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 278 SdHoareTripleChecker+Valid, 488 SdHoareTripleChecker+Invalid, 564 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 559 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:10,618 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [278 Valid, 488 Invalid, 564 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 559 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:49:10,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 434 states. [2022-02-20 23:49:10,621 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 434 to 295. [2022-02-20 23:49:10,621 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:10,622 INFO L82 GeneralOperation]: Start isEquivalent. First operand 434 states. Second operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 0 states have call 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:10,622 INFO L74 IsIncluded]: Start isIncluded. First operand 434 states. Second operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 0 states have call 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:10,622 INFO L87 Difference]: Start difference. First operand 434 states. Second operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 0 states have call 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:10,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,629 INFO L93 Difference]: Finished difference Result 434 states and 542 transitions. [2022-02-20 23:49:10,629 INFO L276 IsEmpty]: Start isEmpty. Operand 434 states and 542 transitions. [2022-02-20 23:49:10,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:10,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:10,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 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 434 states. [2022-02-20 23:49:10,630 INFO L87 Difference]: Start difference. First operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 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 434 states. [2022-02-20 23:49:10,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:10,637 INFO L93 Difference]: Finished difference Result 434 states and 542 transitions. [2022-02-20 23:49:10,637 INFO L276 IsEmpty]: Start isEmpty. Operand 434 states and 542 transitions. [2022-02-20 23:49:10,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:10,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:10,638 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:10,638 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:10,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 295 states, 280 states have (on average 1.3535714285714286) internal successors, (379), 294 states have internal predecessors, (379), 0 states have call successors, (0), 0 states have call 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:10,641 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 295 states to 295 states and 379 transitions. [2022-02-20 23:49:10,641 INFO L78 Accepts]: Start accepts. Automaton has 295 states and 379 transitions. Word has length 43 [2022-02-20 23:49:10,641 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:10,642 INFO L470 AbstractCegarLoop]: Abstraction has 295 states and 379 transitions. [2022-02-20 23:49:10,642 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 4.3) internal successors, (43), 11 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call 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:10,642 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 379 transitions. [2022-02-20 23:49:10,642 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-20 23:49:10,642 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:10,642 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:10,662 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:10,852 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:10,852 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:10,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:10,853 INFO L85 PathProgramCache]: Analyzing trace with hash 829486443, now seen corresponding path program 1 times [2022-02-20 23:49:10,853 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:10,853 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1156523336] [2022-02-20 23:49:10,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:10,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:10,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:11,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {29154#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(14, 2); {29154#true} is VALID [2022-02-20 23:49:11,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {29154#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {29154#true} is VALID [2022-02-20 23:49:11,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {29154#true} main_#t~short4#1 := main_~c1~0#1 < 5; {29154#true} is VALID [2022-02-20 23:49:11,136 INFO L290 TraceCheckUtils]: 3: Hoare triple {29154#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29154#true} is VALID [2022-02-20 23:49:11,136 INFO L290 TraceCheckUtils]: 4: Hoare triple {29154#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29156#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:11,136 INFO L290 TraceCheckUtils]: 5: Hoare triple {29156#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29156#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:49:11,137 INFO L290 TraceCheckUtils]: 6: Hoare triple {29156#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:11,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:11,138 INFO L290 TraceCheckUtils]: 8: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,138 INFO L290 TraceCheckUtils]: 9: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,139 INFO L290 TraceCheckUtils]: 10: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,139 INFO L290 TraceCheckUtils]: 11: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,140 INFO L290 TraceCheckUtils]: 12: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,140 INFO L290 TraceCheckUtils]: 13: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,141 INFO L290 TraceCheckUtils]: 14: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,141 INFO L290 TraceCheckUtils]: 15: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~c2~0#1 := 0; {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:11,141 INFO L290 TraceCheckUtils]: 16: Hoare triple {29158#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} is VALID [2022-02-20 23:49:11,142 INFO L290 TraceCheckUtils]: 17: Hoare triple {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} main_#t~short4#1 := main_~c1~0#1 < 5; {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} is VALID [2022-02-20 23:49:11,142 INFO L290 TraceCheckUtils]: 18: Hoare triple {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} is VALID [2022-02-20 23:49:11,143 INFO L290 TraceCheckUtils]: 19: Hoare triple {29159#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,145 INFO L290 TraceCheckUtils]: 22: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,147 INFO L290 TraceCheckUtils]: 23: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,148 INFO L290 TraceCheckUtils]: 24: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,150 INFO L290 TraceCheckUtils]: 25: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,150 INFO L290 TraceCheckUtils]: 26: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,150 INFO L290 TraceCheckUtils]: 27: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,151 INFO L290 TraceCheckUtils]: 28: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,151 INFO L290 TraceCheckUtils]: 29: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} main_~c2~0#1 := 0; {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:49:11,153 INFO L290 TraceCheckUtils]: 32: Hoare triple {29160#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~last~0#1.base, 12 + main_~last~0#1.offset, 4); srcloc: L567 {29161#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:49:11,154 INFO L290 TraceCheckUtils]: 33: Hoare triple {29161#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|))} SUMMARY for call write~$Pointer$(main_~last~0#1.base, main_~last~0#1.offset, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L567-1 {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} is VALID [2022-02-20 23:49:11,154 INFO L290 TraceCheckUtils]: 34: Hoare triple {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} is VALID [2022-02-20 23:49:11,155 INFO L290 TraceCheckUtils]: 35: Hoare triple {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} main_#t~short4#1 := main_~c1~0#1 < 5; {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} is VALID [2022-02-20 23:49:11,155 INFO L290 TraceCheckUtils]: 36: Hoare triple {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} is VALID [2022-02-20 23:49:11,155 INFO L290 TraceCheckUtils]: 37: Hoare triple {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} is VALID [2022-02-20 23:49:11,155 INFO L290 TraceCheckUtils]: 38: Hoare triple {29162#(= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29163#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:49:11,156 INFO L290 TraceCheckUtils]: 39: Hoare triple {29163#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {29164#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:49:11,156 INFO L290 TraceCheckUtils]: 40: Hoare triple {29164#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {29164#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:49:11,157 INFO L290 TraceCheckUtils]: 41: Hoare triple {29164#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {29165#(and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1))} is VALID [2022-02-20 23:49:11,157 INFO L290 TraceCheckUtils]: 42: Hoare triple {29165#(and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {29166#(and (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:49:11,157 INFO L290 TraceCheckUtils]: 43: Hoare triple {29166#(and (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {29167#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:49:11,157 INFO L290 TraceCheckUtils]: 44: Hoare triple {29167#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {29155#false} is VALID [2022-02-20 23:49:11,158 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:11,158 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:49:11,158 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1156523336] [2022-02-20 23:49:11,158 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1156523336] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:49:11,158 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [147761583] [2022-02-20 23:49:11,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:11,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:11,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:49:11,159 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:49:11,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-02-20 23:49:11,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:11,314 INFO L263 TraceCheckSpWp]: Trace formula consists of 352 conjuncts, 68 conjunts are in the unsatisfiable core [2022-02-20 23:49:11,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:49:11,344 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:49:11,354 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:49:11,378 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:11,383 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:49:11,423 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:11,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:49:11,428 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:11,429 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:49:11,452 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:11,452 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:49:11,459 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:49:11,461 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:49:11,598 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:49:11,599 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:11,672 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:49:11,680 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:49:11,707 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:49:11,717 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:49:11,743 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:49:11,754 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:49:11,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, 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:49:11,786 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:49:11,821 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:49:11,835 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:49:12,041 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:49:12,042 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 1 case distinctions, treesize of input 21 treesize of output 26 [2022-02-20 23:49:12,056 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:49:12,056 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 1 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:49:12,162 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:49:12,163 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 59 treesize of output 56 [2022-02-20 23:49:12,172 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 29 treesize of output 29 [2022-02-20 23:49:12,761 INFO L356 Elim1Store]: treesize reduction 9, result has 10.0 percent of original size [2022-02-20 23:49:12,762 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 24 treesize of output 10 [2022-02-20 23:49:12,774 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:49:12,775 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 42 treesize of output 32 [2022-02-20 23:49:13,036 INFO L290 TraceCheckUtils]: 0: Hoare triple {29154#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(14, 2); {29154#true} is VALID [2022-02-20 23:49:13,036 INFO L290 TraceCheckUtils]: 1: Hoare triple {29154#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {29154#true} is VALID [2022-02-20 23:49:13,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {29154#true} main_#t~short4#1 := main_~c1~0#1 < 5; {29154#true} is VALID [2022-02-20 23:49:13,036 INFO L290 TraceCheckUtils]: 3: Hoare triple {29154#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29154#true} is VALID [2022-02-20 23:49:13,038 INFO L290 TraceCheckUtils]: 4: Hoare triple {29154#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,039 INFO L290 TraceCheckUtils]: 6: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {29157#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,049 INFO L290 TraceCheckUtils]: 9: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,051 INFO L290 TraceCheckUtils]: 10: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,051 INFO L290 TraceCheckUtils]: 11: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,052 INFO L290 TraceCheckUtils]: 12: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_#t~short8#1 := main_~c2~0#1 < 3; {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,052 INFO L290 TraceCheckUtils]: 13: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,053 INFO L290 TraceCheckUtils]: 15: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} main_~c2~0#1 := 0; {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} is VALID [2022-02-20 23:49:13,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {29195#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,054 INFO L290 TraceCheckUtils]: 18: Hoare triple {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,057 INFO L290 TraceCheckUtils]: 19: Hoare triple {29220#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,057 INFO L290 TraceCheckUtils]: 20: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,058 INFO L290 TraceCheckUtils]: 21: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,059 INFO L290 TraceCheckUtils]: 22: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,060 INFO L290 TraceCheckUtils]: 23: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,062 INFO L290 TraceCheckUtils]: 25: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,062 INFO L290 TraceCheckUtils]: 26: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,063 INFO L290 TraceCheckUtils]: 27: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_#t~short8#1 := main_~c2~0#1 < 3; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,063 INFO L290 TraceCheckUtils]: 28: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,063 INFO L290 TraceCheckUtils]: 29: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~c2~0#1 := 0; {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,064 INFO L290 TraceCheckUtils]: 31: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,066 INFO L290 TraceCheckUtils]: 32: Hoare triple {29230#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 0) 0) (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~last~0#1.base, 12 + main_~last~0#1.offset, 4); srcloc: L567 {29270#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:49:13,067 INFO L290 TraceCheckUtils]: 33: Hoare triple {29270#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~last~0#1.base, main_~last~0#1.offset, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L567-1 {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,068 INFO L290 TraceCheckUtils]: 34: Hoare triple {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,069 INFO L290 TraceCheckUtils]: 35: Hoare triple {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_#t~short4#1 := main_~c1~0#1 < 5; {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,070 INFO L290 TraceCheckUtils]: 36: Hoare triple {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,071 INFO L290 TraceCheckUtils]: 37: Hoare triple {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:49:13,073 INFO L290 TraceCheckUtils]: 38: Hoare triple {29274#(and (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))))) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) 0) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} is VALID [2022-02-20 23:49:13,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} is VALID [2022-02-20 23:49:13,075 INFO L290 TraceCheckUtils]: 40: Hoare triple {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} is VALID [2022-02-20 23:49:13,076 INFO L290 TraceCheckUtils]: 41: Hoare triple {29290#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) 0) 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (exists ((|ULTIMATE.start_main_~last~0#1.offset| Int)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12))) 1) (or (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {29300#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0) (exists ((v_arrayElimCell_51 Int)) (and (or (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem15#1.base| v_arrayElimCell_51)) (not (= v_arrayElimCell_51 |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| v_arrayElimCell_51) 1))))} is VALID [2022-02-20 23:49:13,077 INFO L290 TraceCheckUtils]: 42: Hoare triple {29300#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= |ULTIMATE.start_main_#t~mem15#1.offset| 0) (exists ((v_arrayElimCell_51 Int)) (and (or (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem15#1.base| v_arrayElimCell_51)) (not (= v_arrayElimCell_51 |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| v_arrayElimCell_51) 1))))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {29304#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (exists ((v_arrayElimCell_51 Int)) (and (not (= v_arrayElimCell_51 |ULTIMATE.start_main_~x~1#1.base|)) (or (= v_arrayElimCell_51 |ULTIMATE.start_main_~y~1#1.base|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| v_arrayElimCell_51) 1))) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= |ULTIMATE.start_main_~y~1#1.offset| 0))} is VALID [2022-02-20 23:49:13,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {29304#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (exists ((v_arrayElimCell_51 Int)) (and (not (= v_arrayElimCell_51 |ULTIMATE.start_main_~x~1#1.base|)) (or (= v_arrayElimCell_51 |ULTIMATE.start_main_~y~1#1.base|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| v_arrayElimCell_51) 1))) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= |ULTIMATE.start_main_~y~1#1.offset| 0))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {29308#(and (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} is VALID [2022-02-20 23:49:13,078 INFO L290 TraceCheckUtils]: 44: Hoare triple {29308#(and (exists ((|ULTIMATE.start_main_~x~1#1.base| Int)) (and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} assume !(1 == #valid[main_~y~1#1.base]); {29155#false} is VALID [2022-02-20 23:49:13,078 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:49:13,078 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:49:13,292 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2269 (Array Int Int))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|))) (or (and (= .cse0 |c_ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |c_ULTIMATE.start_main_~first~0#1.offset| (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|)))) (= (select |c_#valid| .cse0) 1)))) is different from false [2022-02-20 23:49:13,339 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (let ((.cse0 (select (select (store (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~last~0#1.base| (store (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |c_ULTIMATE.start_main_~x~0#1.base|)) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|))) (or (and (= .cse0 |c_ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |c_ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~last~0#1.base| (store (select |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |c_ULTIMATE.start_main_~x~0#1.offset|)) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|)))) (= (select |c_#valid| .cse0) 1)))) is different from false [2022-02-20 23:49:13,706 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (let ((.cse1 (select (select (store (let ((.cse2 (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262))) (store .cse2 |c_ULTIMATE.start_main_~last~0#1.base| (store (select .cse2 |c_ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |c_ULTIMATE.start_main_~x~0#1.base|))) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|))) (or (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |c_ULTIMATE.start_main_~first~0#1.offset| (select (select (store (let ((.cse0 (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263))) (store .cse0 |c_ULTIMATE.start_main_~last~0#1.base| (store (select .cse0 |c_ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |c_ULTIMATE.start_main_~x~0#1.offset|))) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|))) (= .cse1 |c_ULTIMATE.start_main_~first~0#1.base|)) (= (select |c_#valid| .cse1) 1)))) is different from false [2022-02-20 23:49:16,632 INFO L356 Elim1Store]: treesize reduction 21, result has 47.5 percent of original size [2022-02-20 23:49:16,632 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 2 case distinctions, treesize of input 163 treesize of output 129 [2022-02-20 23:49:16,649 INFO L356 Elim1Store]: treesize reduction 21, result has 47.5 percent of original size [2022-02-20 23:49:16,650 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 2 case distinctions, treesize of input 129 treesize of output 121 [2022-02-20 23:49:16,696 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 207 treesize of output 199 [2022-02-20 23:49:16,714 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 219 treesize of output 215 [2022-02-20 23:49:16,759 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 244 treesize of output 238 [2022-02-20 23:49:16,783 INFO L356 Elim1Store]: treesize reduction 9, result has 10.0 percent of original size [2022-02-20 23:49:16,783 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 250 treesize of output 242 [2022-02-20 23:49:16,813 INFO L356 Elim1Store]: treesize reduction 9, result has 10.0 percent of original size [2022-02-20 23:49:16,814 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 262 treesize of output 252 [2022-02-20 23:49:16,837 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 245 treesize of output 237 [2022-02-20 23:49:16,896 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 135 treesize of output 133 [2022-02-20 23:49:16,911 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 133 treesize of output 129 [2022-02-20 23:49:19,055 INFO L290 TraceCheckUtils]: 44: Hoare triple {29167#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {29155#false} is VALID [2022-02-20 23:49:19,056 INFO L290 TraceCheckUtils]: 43: Hoare triple {29315#(or (and (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} assume !!(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset);main_~z~0#1.base, main_~z~0#1.offset := main_~y~1#1.base, main_~y~1#1.offset; {29167#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:49:19,056 INFO L290 TraceCheckUtils]: 42: Hoare triple {29319#(or (and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_#t~mem15#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {29315#(or (and (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} is VALID [2022-02-20 23:49:19,058 INFO L290 TraceCheckUtils]: 41: Hoare triple {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L576 {29319#(or (and (= |ULTIMATE.start_main_#t~mem15#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_#t~mem15#1.offset|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem15#1.base|) 1))} is VALID [2022-02-20 23:49:19,059 INFO L290 TraceCheckUtils]: 40: Hoare triple {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem14#1.base, main_#t~mem14#1.offset;havoc main_#t~mem14#1.base, main_#t~mem14#1.offset; {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:49:19,060 INFO L290 TraceCheckUtils]: 39: Hoare triple {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem14#1.base, main_#t~mem14#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L575 {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:49:19,061 INFO L290 TraceCheckUtils]: 38: Hoare triple {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} assume !!(main_~c1~0#1 > 0);main_#t~post13#1 := main_~c1~0#1;main_~c1~0#1 := main_#t~post13#1 - 1;havoc main_#t~post13#1;main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29323#(or (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:49:19,061 INFO L290 TraceCheckUtils]: 37: Hoare triple {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} assume !main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1; {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:19,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:19,062 INFO L290 TraceCheckUtils]: 35: Hoare triple {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} main_#t~short4#1 := main_~c1~0#1 < 5; {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:19,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:19,063 INFO L290 TraceCheckUtils]: 33: Hoare triple {29349#(forall ((v_ArrVal_2269 (Array Int Int))) (or (and (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(main_~last~0#1.base, main_~last~0#1.offset, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L567-1 {29333#(or (and (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1))} is VALID [2022-02-20 23:49:19,064 INFO L290 TraceCheckUtils]: 32: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~last~0#1.base, 12 + main_~last~0#1.offset, 4); srcloc: L567 {29349#(forall ((v_ArrVal_2269 (Array Int Int))) (or (and (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is VALID [2022-02-20 23:49:19,065 INFO L290 TraceCheckUtils]: 31: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,066 INFO L290 TraceCheckUtils]: 30: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} main_~c2~0#1 := 0; {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,066 INFO L290 TraceCheckUtils]: 29: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,067 INFO L290 TraceCheckUtils]: 28: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,070 WARN L290 TraceCheckUtils]: 27: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} main_#t~short8#1 := main_~c2~0#1 < 3; {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is UNKNOWN [2022-02-20 23:49:19,071 INFO L290 TraceCheckUtils]: 26: Hoare triple {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29353#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (= (select |#valid| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (and (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,077 WARN L290 TraceCheckUtils]: 24: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,082 INFO L290 TraceCheckUtils]: 23: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is VALID [2022-02-20 23:49:19,087 WARN L290 TraceCheckUtils]: 22: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,090 INFO L290 TraceCheckUtils]: 21: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is VALID [2022-02-20 23:49:19,101 WARN L290 TraceCheckUtils]: 20: Hoare triple {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,104 INFO L290 TraceCheckUtils]: 19: Hoare triple {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29375#(forall ((v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.offset|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.offset|))) (= (select |#valid| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~x~0#1.base|)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)))} is VALID [2022-02-20 23:49:19,107 WARN L290 TraceCheckUtils]: 18: Hoare triple {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is UNKNOWN [2022-02-20 23:49:19,108 INFO L290 TraceCheckUtils]: 17: Hoare triple {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} main_#t~short4#1 := main_~c1~0#1 < 5; {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is VALID [2022-02-20 23:49:19,113 WARN L290 TraceCheckUtils]: 16: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume main_~first~0#1.base == 0 && main_~first~0#1.offset == 0;main_~first~0#1.base, main_~first~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset;main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29394#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|) (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|))))))} is UNKNOWN [2022-02-20 23:49:19,115 WARN L290 TraceCheckUtils]: 15: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} main_~c2~0#1 := 0; {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,118 WARN L290 TraceCheckUtils]: 14: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume !main_#t~short8#1;havoc main_#t~nondet7#1;havoc main_#t~short8#1; {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,121 WARN L290 TraceCheckUtils]: 13: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume main_#t~short8#1;assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647;main_#t~short8#1 := 0 != main_#t~nondet7#1; {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,124 WARN L290 TraceCheckUtils]: 12: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} main_#t~short8#1 := main_~c2~0#1 < 3; {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,126 WARN L290 TraceCheckUtils]: 11: Hoare triple {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is UNKNOWN [2022-02-20 23:49:19,129 INFO L290 TraceCheckUtils]: 10: Hoare triple {29423#(forall ((v_ArrVal_2250 Int) (|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (forall ((v_ArrVal_2252 Int) (v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|)))))} SUMMARY for call write~int(2 * main_~c1~0#1, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L547 {29404#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (forall ((v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} is VALID [2022-02-20 23:49:19,132 INFO L290 TraceCheckUtils]: 9: Hoare triple {29423#(forall ((v_ArrVal_2250 Int) (|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (forall ((v_ArrVal_2252 Int) (v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|)))))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L546 {29423#(forall ((v_ArrVal_2250 Int) (|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (forall ((v_ArrVal_2252 Int) (v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:49:19,134 INFO L290 TraceCheckUtils]: 8: Hoare triple {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} SUMMARY for call write~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L545 {29423#(forall ((v_ArrVal_2250 Int) (|v_ULTIMATE.start_main_~x~0#1.base_42| Int) (v_ArrVal_2269 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2262 (Array Int Int))) (or (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42| 1) (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_42|) 0)) (and (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2250)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2262) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |v_ULTIMATE.start_main_~x~0#1.base_42|)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2269) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (forall ((v_ArrVal_2252 Int) (v_ArrVal_2268 (Array Int Int)) (v_ArrVal_2263 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2252)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2263) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_42| v_ArrVal_2268) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:49:19,134 INFO L290 TraceCheckUtils]: 7: Hoare triple {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L544 {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} is VALID [2022-02-20 23:49:19,134 INFO L290 TraceCheckUtils]: 6: Hoare triple {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L542-2 {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} is VALID [2022-02-20 23:49:19,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} is VALID [2022-02-20 23:49:19,136 INFO L290 TraceCheckUtils]: 4: Hoare triple {29154#true} assume !!main_#t~short4#1;havoc main_#t~nondet3#1;havoc main_#t~short4#1;main_#t~post5#1 := main_~c1~0#1;main_~c1~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {29430#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (forall ((v_arrayElimCell_59 Int)) (= (select (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 1) v_arrayElimCell_59) 1)))} is VALID [2022-02-20 23:49:19,136 INFO L290 TraceCheckUtils]: 3: Hoare triple {29154#true} assume main_#t~short4#1;assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647;main_#t~short4#1 := 0 != main_#t~nondet3#1; {29154#true} is VALID [2022-02-20 23:49:19,136 INFO L290 TraceCheckUtils]: 2: Hoare triple {29154#true} main_#t~short4#1 := main_~c1~0#1 < 5; {29154#true} is VALID [2022-02-20 23:49:19,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {29154#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post5#1, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~post9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet7#1, main_#t~short8#1, main_~x~0#1.base, main_~x~0#1.offset, main_~y~0#1.base, main_~y~0#1.offset, main_#t~nondet3#1, main_#t~short4#1, main_#t~post13#1, main_#t~mem14#1.base, main_#t~mem14#1.offset, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1.base, main_#t~mem16#1.offset, main_#t~mem17#1, main_~z~0#1.base, main_~z~0#1.offset, main_~x~1#1.base, main_~x~1#1.offset, main_~y~1#1.base, main_~y~1#1.offset, main_~first~0#1.base, main_~first~0#1.offset, main_~last~0#1.base, main_~last~0#1.offset, main_~c1~0#1, main_~c2~0#1;main_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0;main_~c1~0#1 := 0;main_~c2~0#1 := 0; {29154#true} is VALID [2022-02-20 23:49:19,136 INFO L290 TraceCheckUtils]: 0: Hoare triple {29154#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(14, 2); {29154#true} is VALID [2022-02-20 23:49:19,136 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 12 not checked. [2022-02-20 23:49:19,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [147761583] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:49:19,137 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:49:19,137 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11, 13] total 33 [2022-02-20 23:49:19,137 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1008565842] [2022-02-20 23:49:19,137 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:49:19,137 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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) Word has length 45 [2022-02-20 23:49:19,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:49:19,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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:49:19,321 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 110 inductive. 0 not inductive. 15 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:19,322 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-02-20 23:49:19,322 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:49:19,322 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-02-20 23:49:19,322 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=821, Unknown=8, NotChecked=180, Total=1122 [2022-02-20 23:49:19,322 INFO L87 Difference]: Start difference. First operand 295 states and 379 transitions. Second operand has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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:49:40,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,382 INFO L93 Difference]: Finished difference Result 429 states and 548 transitions. [2022-02-20 23:49:40,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-02-20 23:49:40,382 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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) Word has length 45 [2022-02-20 23:49:40,382 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:49:40,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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:49:40,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 227 transitions. [2022-02-20 23:49:40,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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:49:40,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 227 transitions. [2022-02-20 23:49:40,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 30 states and 227 transitions. [2022-02-20 23:49:40,647 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 219 inductive. 0 not inductive. 8 times theorem prover too weak to decide inductivity. [2022-02-20 23:49:40,653 INFO L225 Difference]: With dead ends: 429 [2022-02-20 23:49:40,653 INFO L226 Difference]: Without dead ends: 429 [2022-02-20 23:49:40,653 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 139 GetRequests, 80 SyntacticMatches, 6 SemanticMatches, 53 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 588 ImplicationChecksByTransitivity, 21.7s TimeCoverageRelationStatistics Valid=333, Invalid=2313, Unknown=18, NotChecked=306, Total=2970 [2022-02-20 23:49:40,654 INFO L933 BasicCegarLoop]: 75 mSDtfsCounter, 194 mSDsluCounter, 1017 mSDsCounter, 0 mSdLazyCounter, 570 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 194 SdHoareTripleChecker+Valid, 1092 SdHoareTripleChecker+Invalid, 1588 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 570 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 971 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:49:40,654 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [194 Valid, 1092 Invalid, 1588 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 570 Invalid, 0 Unknown, 971 Unchecked, 0.6s Time] [2022-02-20 23:49:40,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 429 states. [2022-02-20 23:49:40,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 429 to 338. [2022-02-20 23:49:40,657 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:49:40,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 429 states. Second operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:40,658 INFO L74 IsIncluded]: Start isIncluded. First operand 429 states. Second operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:40,658 INFO L87 Difference]: Start difference. First operand 429 states. Second operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:40,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,664 INFO L93 Difference]: Finished difference Result 429 states and 548 transitions. [2022-02-20 23:49:40,664 INFO L276 IsEmpty]: Start isEmpty. Operand 429 states and 548 transitions. [2022-02-20 23:49:40,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:40,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:40,665 INFO L74 IsIncluded]: Start isIncluded. First operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 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 429 states. [2022-02-20 23:49:40,666 INFO L87 Difference]: Start difference. First operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 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 429 states. [2022-02-20 23:49:40,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:49:40,672 INFO L93 Difference]: Finished difference Result 429 states and 548 transitions. [2022-02-20 23:49:40,672 INFO L276 IsEmpty]: Start isEmpty. Operand 429 states and 548 transitions. [2022-02-20 23:49:40,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:49:40,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:49:40,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:49:40,673 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:49:40,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 338 states, 323 states have (on average 1.3436532507739938) internal successors, (434), 337 states have internal predecessors, (434), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:49:40,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 338 states to 338 states and 434 transitions. [2022-02-20 23:49:40,677 INFO L78 Accepts]: Start accepts. Automaton has 338 states and 434 transitions. Word has length 45 [2022-02-20 23:49:40,677 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:49:40,677 INFO L470 AbstractCegarLoop]: Abstraction has 338 states and 434 transitions. [2022-02-20 23:49:40,677 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 34 states, 33 states have (on average 3.787878787878788) internal successors, (125), 34 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:49:40,678 INFO L276 IsEmpty]: Start isEmpty. Operand 338 states and 434 transitions. [2022-02-20 23:49:40,678 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-20 23:49:40,678 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:49:40,678 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:49:40,695 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:49:40,895 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:49:40,895 INFO L402 AbstractCegarLoop]: === Iteration 33 === Targeting ULTIMATE.startErr33REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 39 more)] === [2022-02-20 23:49:40,896 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:49:40,896 INFO L85 PathProgramCache]: Analyzing trace with hash 829486444, now seen corresponding path program 1 times [2022-02-20 23:49:40,896 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:49:40,896 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [461175580] [2022-02-20 23:49:40,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:49:40,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:49:40,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat