./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/test-0504.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/memsafety/test-0504.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 cddde357ab55a506b6049f3b60959cd723bf2cbfd36f7774fe3606d53024bbf3 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:46:01,746 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:46:01,748 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:46:01,779 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:46:01,780 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:46:01,782 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:46:01,783 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:46:01,785 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:46:01,787 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:46:01,790 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:46:01,791 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:46:01,792 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:46:01,792 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:46:01,794 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:46:01,795 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:46:01,797 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:46:01,798 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:46:01,799 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:46:01,801 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:46:01,805 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:46:01,805 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:46:01,806 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:46:01,807 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:46:01,808 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:46:01,812 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:46:01,813 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:46:01,813 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:46:01,814 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:46:01,814 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:46:01,815 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:46:01,815 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:46:01,816 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:46:01,817 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:46:01,818 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:46:01,818 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:46:01,819 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:46:01,819 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:46:01,819 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:46:01,820 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:46:01,820 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:46:01,821 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:46:01,822 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:46:01,847 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:46:01,847 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:46:01,847 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:46:01,848 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:46:01,848 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:46:01,848 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:46:01,849 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:46:01,849 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:46:01,849 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:46:01,849 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:46:01,850 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:46:01,850 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:46:01,850 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:46:01,851 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:46:01,852 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:46:01,853 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:46:01,853 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:46:01,853 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:46:01,853 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:46:01,853 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:46:01,853 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:46:01,854 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:46:01,855 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:46:01,855 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:46:01,855 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:46:01,855 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 -> cddde357ab55a506b6049f3b60959cd723bf2cbfd36f7774fe3606d53024bbf3 [2022-02-20 23:46:02,024 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:46:02,042 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:46:02,044 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:46:02,045 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:46:02,046 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:46:02,046 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0504.i [2022-02-20 23:46:02,092 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f0f66158/35fa51011e2a49daaf3230ce6de722fc/FLAG2250b8ce6 [2022-02-20 23:46:02,502 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:46:02,503 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0504.i [2022-02-20 23:46:02,509 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f0f66158/35fa51011e2a49daaf3230ce6de722fc/FLAG2250b8ce6 [2022-02-20 23:46:02,518 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f0f66158/35fa51011e2a49daaf3230ce6de722fc [2022-02-20 23:46:02,519 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:46:02,520 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:46:02,521 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:46:02,521 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:46:02,523 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:46:02,524 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,525 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7de5538 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02, skipping insertion in model container [2022-02-20 23:46:02,525 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,529 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:46:02,548 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:46:02,880 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:46:02,885 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:46:02,910 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:46:02,932 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:46:02,933 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02 WrapperNode [2022-02-20 23:46:02,933 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:46:02,934 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:46:02,934 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:46:02,934 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:46:02,939 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:46:02" (1/1) ... [2022-02-20 23:46:02,954 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:46:02" (1/1) ... [2022-02-20 23:46:02,972 INFO L137 Inliner]: procedures = 123, calls = 27, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 86 [2022-02-20 23:46:02,973 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:46:02,973 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:46:02,973 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:46:02,973 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:46:02,978 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,978 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,985 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,985 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,990 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,992 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:02,993 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:03,000 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:46:03,000 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:46:03,000 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:46:03,001 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:46:03,001 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (1/1) ... [2022-02-20 23:46:03,010 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:46:03,017 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:03,025 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:46:03,027 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:46:03,054 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:46:03,055 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:46:03,056 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:46:03,113 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:46:03,114 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:46:03,436 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:46:03,441 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:46:03,441 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:46:03,442 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:46:03 BoogieIcfgContainer [2022-02-20 23:46:03,443 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:46:03,444 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:46:03,444 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:46:03,449 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:46:03,449 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:46:02" (1/3) ... [2022-02-20 23:46:03,450 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6acbc8aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:46:03, skipping insertion in model container [2022-02-20 23:46:03,450 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:46:02" (2/3) ... [2022-02-20 23:46:03,450 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6acbc8aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:46:03, skipping insertion in model container [2022-02-20 23:46:03,450 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:46:03" (3/3) ... [2022-02-20 23:46:03,451 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0504.i [2022-02-20 23:46:03,454 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:46:03,455 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 41 error locations. [2022-02-20 23:46:03,483 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:46:03,488 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:46:03,488 INFO L340 AbstractCegarLoop]: Starting to check reachability of 41 error locations. [2022-02-20 23:46:03,500 INFO L276 IsEmpty]: Start isEmpty. Operand has 87 states, 45 states have (on average 2.1555555555555554) internal successors, (97), 86 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:46:03,503 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:46:03,504 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:03,504 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:46:03,504 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:03,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:03,508 INFO L85 PathProgramCache]: Analyzing trace with hash 28780379, now seen corresponding path program 1 times [2022-02-20 23:46:03,514 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:03,514 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371408952] [2022-02-20 23:46:03,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:03,515 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:03,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:03,608 INFO L290 TraceCheckUtils]: 0: Hoare triple {90#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(12, 2); {90#true} is VALID [2022-02-20 23:46:03,609 INFO L290 TraceCheckUtils]: 1: Hoare triple {90#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {90#true} is VALID [2022-02-20 23:46:03,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {90#true} assume !true; {91#false} is VALID [2022-02-20 23:46:03,610 INFO L290 TraceCheckUtils]: 3: Hoare triple {91#false} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {91#false} is VALID [2022-02-20 23:46:03,611 INFO L290 TraceCheckUtils]: 4: Hoare triple {91#false} assume !(1 == #valid[main_~first~0#1.base]); {91#false} is VALID [2022-02-20 23:46:03,611 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:46:03,612 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:03,612 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [371408952] [2022-02-20 23:46:03,612 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [371408952] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:03,613 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:03,613 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:03,614 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1151020081] [2022-02-20 23:46:03,615 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:03,618 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:46:03,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:03,621 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:46:03,630 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:46:03,630 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:46:03,631 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:03,646 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:46:03,646 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:46:03,650 INFO L87 Difference]: Start difference. First operand has 87 states, 45 states have (on average 2.1555555555555554) internal successors, (97), 86 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 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:46:03,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:03,732 INFO L93 Difference]: Finished difference Result 87 states and 91 transitions. [2022-02-20 23:46:03,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:46:03,733 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:46:03,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:03,734 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:46:03,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 97 transitions. [2022-02-20 23:46:03,753 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:46:03,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 97 transitions. [2022-02-20 23:46:03,755 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 97 transitions. [2022-02-20 23:46:03,832 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:03,851 INFO L225 Difference]: With dead ends: 87 [2022-02-20 23:46:03,852 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 23:46:03,853 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:46:03,858 INFO L933 BasicCegarLoop]: 91 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, 91 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:46:03,860 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 91 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:03,873 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 23:46:03,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2022-02-20 23:46:03,887 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:03,890 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:03,891 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:03,893 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:03,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:03,898 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2022-02-20 23:46:03,898 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2022-02-20 23:46:03,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:03,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:03,901 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 85 states. [2022-02-20 23:46:03,902 INFO L87 Difference]: Start difference. First operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 85 states. [2022-02-20 23:46:03,908 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:03,908 INFO L93 Difference]: Finished difference Result 85 states and 89 transitions. [2022-02-20 23:46:03,908 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2022-02-20 23:46:03,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:03,909 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:03,909 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:03,910 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:03,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 44 states have (on average 2.022727272727273) internal successors, (89), 84 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:03,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 89 transitions. [2022-02-20 23:46:03,917 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 89 transitions. Word has length 5 [2022-02-20 23:46:03,918 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:03,918 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 89 transitions. [2022-02-20 23:46:03,918 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:46:03,918 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 89 transitions. [2022-02-20 23:46:03,919 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:46:03,919 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:03,919 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:46:03,919 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:46:03,919 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:03,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:03,920 INFO L85 PathProgramCache]: Analyzing trace with hash 889572104, now seen corresponding path program 1 times [2022-02-20 23:46:03,920 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:03,920 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2124474762] [2022-02-20 23:46:03,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:03,921 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:03,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:03,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {436#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(12, 2); {436#true} is VALID [2022-02-20 23:46:03,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {436#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {438#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:03,976 INFO L290 TraceCheckUtils]: 2: Hoare triple {438#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {438#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:03,978 INFO L290 TraceCheckUtils]: 3: Hoare triple {438#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {438#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:03,979 INFO L290 TraceCheckUtils]: 4: Hoare triple {438#(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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {437#false} is VALID [2022-02-20 23:46:03,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {437#false} assume !(1 == #valid[main_~first~0#1.base]); {437#false} is VALID [2022-02-20 23:46:03,979 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:46:03,980 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:03,981 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2124474762] [2022-02-20 23:46:03,982 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2124474762] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:03,982 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:03,982 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:46:03,987 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [266387697] [2022-02-20 23:46:03,987 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:03,989 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:03,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:03,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:03,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:03,995 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:03,996 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:03,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:03,997 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:03,997 INFO L87 Difference]: Start difference. First operand 85 states and 89 transitions. Second operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,134 INFO L93 Difference]: Finished difference Result 133 states and 139 transitions. [2022-02-20 23:46:04,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:04,135 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:04,135 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:04,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 141 transitions. [2022-02-20 23:46:04,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 141 transitions. [2022-02-20 23:46:04,138 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 141 transitions. [2022-02-20 23:46:04,232 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:46:04,238 INFO L225 Difference]: With dead ends: 133 [2022-02-20 23:46:04,238 INFO L226 Difference]: Without dead ends: 133 [2022-02-20 23:46:04,239 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:46:04,243 INFO L933 BasicCegarLoop]: 87 mSDtfsCounter, 49 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:04,243 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 165 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:04,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 133 states. [2022-02-20 23:46:04,248 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 133 to 109. [2022-02-20 23:46:04,248 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:04,248 INFO L82 GeneralOperation]: Start isEquivalent. First operand 133 states. Second operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,248 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,249 INFO L87 Difference]: Start difference. First operand 133 states. Second operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,252 INFO L93 Difference]: Finished difference Result 133 states and 139 transitions. [2022-02-20 23:46:04,252 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 139 transitions. [2022-02-20 23:46:04,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,253 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 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 133 states. [2022-02-20 23:46:04,253 INFO L87 Difference]: Start difference. First operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 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 133 states. [2022-02-20 23:46:04,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,256 INFO L93 Difference]: Finished difference Result 133 states and 139 transitions. [2022-02-20 23:46:04,257 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 139 transitions. [2022-02-20 23:46:04,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,257 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:04,258 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:04,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 68 states have (on average 2.0441176470588234) internal successors, (139), 108 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 139 transitions. [2022-02-20 23:46:04,260 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 139 transitions. Word has length 6 [2022-02-20 23:46:04,261 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:04,261 INFO L470 AbstractCegarLoop]: Abstraction has 109 states and 139 transitions. [2022-02-20 23:46:04,261 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,261 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 139 transitions. [2022-02-20 23:46:04,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:46:04,261 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:04,262 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:46:04,262 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:46:04,262 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:04,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:04,262 INFO L85 PathProgramCache]: Analyzing trace with hash 889571339, now seen corresponding path program 1 times [2022-02-20 23:46:04,263 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:04,263 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1402319500] [2022-02-20 23:46:04,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:04,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:04,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:04,322 INFO L290 TraceCheckUtils]: 0: Hoare triple {949#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(12, 2); {949#true} is VALID [2022-02-20 23:46:04,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {949#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {949#true} is VALID [2022-02-20 23:46:04,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {949#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {949#true} is VALID [2022-02-20 23:46:04,323 INFO L290 TraceCheckUtils]: 3: Hoare triple {949#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {951#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:04,323 INFO L290 TraceCheckUtils]: 4: Hoare triple {951#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {951#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:04,324 INFO L290 TraceCheckUtils]: 5: Hoare triple {951#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(1 == #valid[main_~x~0#1.base]); {950#false} is VALID [2022-02-20 23:46:04,324 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:46:04,324 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:04,324 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1402319500] [2022-02-20 23:46:04,324 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1402319500] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:04,325 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:04,325 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:04,325 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1741397773] [2022-02-20 23:46:04,325 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:04,325 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:04,325 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:04,326 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,330 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:04,330 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:04,330 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:04,331 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:04,331 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:04,331 INFO L87 Difference]: Start difference. First operand 109 states and 139 transitions. Second operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,477 INFO L93 Difference]: Finished difference Result 130 states and 154 transitions. [2022-02-20 23:46:04,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:04,477 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:04,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:04,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 122 transitions. [2022-02-20 23:46:04,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 122 transitions. [2022-02-20 23:46:04,481 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 122 transitions. [2022-02-20 23:46:04,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:04,580 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:46:04,580 INFO L226 Difference]: Without dead ends: 130 [2022-02-20 23:46:04,580 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:46:04,581 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 74 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 64 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:04,581 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [74 Valid, 64 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:04,581 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-02-20 23:46:04,585 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 101. [2022-02-20 23:46:04,585 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:04,585 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,586 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,586 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,590 INFO L93 Difference]: Finished difference Result 130 states and 154 transitions. [2022-02-20 23:46:04,590 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 154 transitions. [2022-02-20 23:46:04,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,591 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 130 states. [2022-02-20 23:46:04,591 INFO L87 Difference]: Start difference. First operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 130 states. [2022-02-20 23:46:04,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,595 INFO L93 Difference]: Finished difference Result 130 states and 154 transitions. [2022-02-20 23:46:04,595 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 154 transitions. [2022-02-20 23:46:04,595 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,595 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,596 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:04,596 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:04,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 68 states have (on average 1.8235294117647058) internal successors, (124), 100 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 124 transitions. [2022-02-20 23:46:04,599 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 124 transitions. Word has length 6 [2022-02-20 23:46:04,599 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:04,599 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 124 transitions. [2022-02-20 23:46:04,599 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,599 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 124 transitions. [2022-02-20 23:46:04,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:46:04,600 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:04,600 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:46:04,615 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:46:04,615 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:04,616 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:04,616 INFO L85 PathProgramCache]: Analyzing trace with hash 889571340, now seen corresponding path program 1 times [2022-02-20 23:46:04,616 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:04,616 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1208078259] [2022-02-20 23:46:04,617 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:04,617 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:04,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:04,668 INFO L290 TraceCheckUtils]: 0: Hoare triple {1445#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(12, 2); {1445#true} is VALID [2022-02-20 23:46:04,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {1445#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {1445#true} is VALID [2022-02-20 23:46:04,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {1445#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {1445#true} is VALID [2022-02-20 23:46:04,669 INFO L290 TraceCheckUtils]: 3: Hoare triple {1445#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {1447#(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:46:04,670 INFO L290 TraceCheckUtils]: 4: Hoare triple {1447#(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); {1447#(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:46:04,670 INFO L290 TraceCheckUtils]: 5: Hoare triple {1447#(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); {1446#false} is VALID [2022-02-20 23:46:04,671 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:46:04,671 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:04,671 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1208078259] [2022-02-20 23:46:04,671 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1208078259] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:04,671 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:04,671 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:04,672 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216495654] [2022-02-20 23:46:04,672 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:04,672 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:04,672 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:04,672 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:04,677 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:04,677 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:04,677 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:04,678 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:04,678 INFO L87 Difference]: Start difference. First operand 101 states and 124 transitions. Second operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,832 INFO L93 Difference]: Finished difference Result 138 states and 161 transitions. [2022-02-20 23:46:04,833 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:04,833 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:46:04,833 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:04,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 125 transitions. [2022-02-20 23:46:04,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 125 transitions. [2022-02-20 23:46:04,835 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 125 transitions. [2022-02-20 23:46:04,886 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:46:04,888 INFO L225 Difference]: With dead ends: 138 [2022-02-20 23:46:04,888 INFO L226 Difference]: Without dead ends: 138 [2022-02-20 23:46:04,888 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:46:04,889 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 47 mSDsluCounter, 39 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:04,889 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 102 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:04,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2022-02-20 23:46:04,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 101. [2022-02-20 23:46:04,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:04,892 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,892 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,893 INFO L87 Difference]: Start difference. First operand 138 states. Second operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,895 INFO L93 Difference]: Finished difference Result 138 states and 161 transitions. [2022-02-20 23:46:04,895 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 161 transitions. [2022-02-20 23:46:04,896 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 138 states. [2022-02-20 23:46:04,896 INFO L87 Difference]: Start difference. First operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 138 states. [2022-02-20 23:46:04,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:04,899 INFO L93 Difference]: Finished difference Result 138 states and 161 transitions. [2022-02-20 23:46:04,899 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 161 transitions. [2022-02-20 23:46:04,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:04,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:04,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:04,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:04,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 73 states have (on average 1.6849315068493151) internal successors, (123), 100 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 123 transitions. [2022-02-20 23:46:04,902 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 123 transitions. Word has length 6 [2022-02-20 23:46:04,902 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:04,902 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 123 transitions. [2022-02-20 23:46:04,902 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:04,902 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 123 transitions. [2022-02-20 23:46:04,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:46:04,902 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:04,903 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:04,903 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:46:04,903 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:04,903 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:04,903 INFO L85 PathProgramCache]: Analyzing trace with hash 1806930847, now seen corresponding path program 1 times [2022-02-20 23:46:04,904 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:04,904 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1395876883] [2022-02-20 23:46:04,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:04,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:04,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:04,921 INFO L290 TraceCheckUtils]: 0: Hoare triple {1965#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(12, 2); {1965#true} is VALID [2022-02-20 23:46:04,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {1965#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:04,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:04,923 INFO L290 TraceCheckUtils]: 3: Hoare triple {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:04,923 INFO L290 TraceCheckUtils]: 4: Hoare triple {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:04,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:04,924 INFO L290 TraceCheckUtils]: 6: Hoare triple {1967#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {1966#false} is VALID [2022-02-20 23:46:04,924 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:46:04,924 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:04,924 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1395876883] [2022-02-20 23:46:04,924 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1395876883] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:04,925 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:04,925 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:04,925 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1706063801] [2022-02-20 23:46:04,925 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:04,925 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:46:04,925 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:04,926 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:46:04,929 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:46:04,929 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:04,930 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:04,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:04,930 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:04,930 INFO L87 Difference]: Start difference. First operand 101 states and 123 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:46:04,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,000 INFO L93 Difference]: Finished difference Result 103 states and 124 transitions. [2022-02-20 23:46:05,000 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:05,000 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:46:05,000 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:05,000 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:46:05,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 82 transitions. [2022-02-20 23:46:05,001 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:46:05,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 82 transitions. [2022-02-20 23:46:05,002 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 82 transitions. [2022-02-20 23:46:05,063 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,064 INFO L225 Difference]: With dead ends: 103 [2022-02-20 23:46:05,064 INFO L226 Difference]: Without dead ends: 100 [2022-02-20 23:46:05,065 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:46:05,065 INFO L933 BasicCegarLoop]: 75 mSDtfsCounter, 0 mSDsluCounter, 41 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 35 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:05,066 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 116 Invalid, 35 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:05,066 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-02-20 23:46:05,069 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-02-20 23:46:05,069 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:05,069 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,070 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,070 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,072 INFO L93 Difference]: Finished difference Result 100 states and 121 transitions. [2022-02-20 23:46:05,072 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-02-20 23:46:05,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,072 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,073 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 100 states. [2022-02-20 23:46:05,073 INFO L87 Difference]: Start difference. First operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 100 states. [2022-02-20 23:46:05,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,075 INFO L93 Difference]: Finished difference Result 100 states and 121 transitions. [2022-02-20 23:46:05,075 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-02-20 23:46:05,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:05,076 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:05,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 72 states have (on average 1.6805555555555556) internal successors, (121), 99 states have internal predecessors, (121), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 121 transitions. [2022-02-20 23:46:05,078 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 121 transitions. Word has length 7 [2022-02-20 23:46:05,078 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:05,078 INFO L470 AbstractCegarLoop]: Abstraction has 100 states and 121 transitions. [2022-02-20 23:46:05,078 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:46:05,078 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-02-20 23:46:05,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:46:05,079 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:05,079 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:05,079 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:46:05,079 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:05,079 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:05,080 INFO L85 PathProgramCache]: Analyzing trace with hash 1857997403, now seen corresponding path program 1 times [2022-02-20 23:46:05,080 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:05,080 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [439566376] [2022-02-20 23:46:05,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:05,080 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:05,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:05,180 INFO L290 TraceCheckUtils]: 0: Hoare triple {2373#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(12, 2); {2373#true} is VALID [2022-02-20 23:46:05,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {2373#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {2373#true} is VALID [2022-02-20 23:46:05,181 INFO L290 TraceCheckUtils]: 2: Hoare triple {2373#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {2373#true} is VALID [2022-02-20 23:46:05,181 INFO L290 TraceCheckUtils]: 3: Hoare triple {2373#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {2375#(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:46:05,182 INFO L290 TraceCheckUtils]: 4: Hoare triple {2375#(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); {2375#(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:46:05,182 INFO L290 TraceCheckUtils]: 5: Hoare triple {2375#(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: L539-2 {2376#(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:46:05,183 INFO L290 TraceCheckUtils]: 6: Hoare triple {2376#(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: L541 {2376#(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:46:05,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {2376#(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: L542 {2376#(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:46:05,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {2376#(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: L543 {2376#(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:46:05,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {2376#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {2376#(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:46:05,186 INFO L290 TraceCheckUtils]: 10: Hoare triple {2376#(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; {2376#(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:46:05,186 INFO L290 TraceCheckUtils]: 11: Hoare triple {2376#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {2376#(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:46:05,187 INFO L290 TraceCheckUtils]: 12: Hoare triple {2376#(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 !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {2377#(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:46:05,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {2377#(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); {2375#(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:46:05,188 INFO L290 TraceCheckUtils]: 14: Hoare triple {2375#(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); {2374#false} is VALID [2022-02-20 23:46:05,188 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:46:05,188 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:05,189 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [439566376] [2022-02-20 23:46:05,189 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [439566376] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:05,189 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:05,189 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:46:05,189 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [935417290] [2022-02-20 23:46:05,189 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:05,190 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:46:05,190 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:05,190 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,202 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:46:05,202 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:05,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:46:05,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:05,203 INFO L87 Difference]: Start difference. First operand 100 states and 121 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,414 INFO L93 Difference]: Finished difference Result 126 states and 146 transitions. [2022-02-20 23:46:05,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:46:05,414 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:46:05,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:05,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 108 transitions. [2022-02-20 23:46:05,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 108 transitions. [2022-02-20 23:46:05,416 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 108 transitions. [2022-02-20 23:46:05,490 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:46:05,491 INFO L225 Difference]: With dead ends: 126 [2022-02-20 23:46:05,491 INFO L226 Difference]: Without dead ends: 126 [2022-02-20 23:46:05,491 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:46:05,492 INFO L933 BasicCegarLoop]: 29 mSDtfsCounter, 175 mSDsluCounter, 38 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 175 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 99 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:05,493 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [175 Valid, 67 Invalid, 99 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:05,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-02-20 23:46:05,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 92. [2022-02-20 23:46:05,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:05,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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:46:05,495 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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:46:05,496 INFO L87 Difference]: Start difference. First operand 126 states. Second operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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:46:05,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,497 INFO L93 Difference]: Finished difference Result 126 states and 146 transitions. [2022-02-20 23:46:05,498 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 146 transitions. [2022-02-20 23:46:05,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,498 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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 126 states. [2022-02-20 23:46:05,498 INFO L87 Difference]: Start difference. First operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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 126 states. [2022-02-20 23:46:05,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,500 INFO L93 Difference]: Finished difference Result 126 states and 146 transitions. [2022-02-20 23:46:05,501 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 146 transitions. [2022-02-20 23:46:05,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:05,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:05,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 67 states have (on average 1.5970149253731343) internal successors, (107), 91 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:46:05,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 107 transitions. [2022-02-20 23:46:05,503 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 107 transitions. Word has length 15 [2022-02-20 23:46:05,503 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:05,503 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 107 transitions. [2022-02-20 23:46:05,503 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,503 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 107 transitions. [2022-02-20 23:46:05,504 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:46:05,504 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:05,504 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:05,504 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:46:05,504 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:05,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:05,505 INFO L85 PathProgramCache]: Analyzing trace with hash 1763344638, now seen corresponding path program 1 times [2022-02-20 23:46:05,505 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:05,505 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69396728] [2022-02-20 23:46:05,505 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:05,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:05,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:05,552 INFO L290 TraceCheckUtils]: 0: Hoare triple {2852#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(12, 2); {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {2852#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {2852#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {2852#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 4: Hoare triple {2852#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 5: Hoare triple {2852#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {2852#true} is VALID [2022-02-20 23:46:05,553 INFO L290 TraceCheckUtils]: 6: Hoare triple {2852#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {2852#true} is VALID [2022-02-20 23:46:05,554 INFO L290 TraceCheckUtils]: 7: Hoare triple {2852#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: L542 {2852#true} is VALID [2022-02-20 23:46:05,554 INFO L290 TraceCheckUtils]: 8: Hoare triple {2852#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: L543 {2852#true} is VALID [2022-02-20 23:46:05,554 INFO L290 TraceCheckUtils]: 9: Hoare triple {2852#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {2852#true} is VALID [2022-02-20 23:46:05,554 INFO L290 TraceCheckUtils]: 10: Hoare triple {2852#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {2852#true} is VALID [2022-02-20 23:46:05,554 INFO L290 TraceCheckUtils]: 11: Hoare triple {2852#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {2852#true} is VALID [2022-02-20 23:46:05,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {2852#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,556 INFO L290 TraceCheckUtils]: 14: Hoare triple {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,556 INFO L290 TraceCheckUtils]: 15: Hoare triple {2854#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(1 == #valid[main_~y~0#1.base]); {2853#false} is VALID [2022-02-20 23:46:05,556 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:46:05,556 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:05,556 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69396728] [2022-02-20 23:46:05,557 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [69396728] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:05,557 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:05,557 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:05,557 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1614837469] [2022-02-20 23:46:05,557 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:05,557 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:46:05,558 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:05,558 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,568 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:05,568 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:05,568 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:05,568 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:05,569 INFO L87 Difference]: Start difference. First operand 92 states and 107 transitions. Second operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,654 INFO L93 Difference]: Finished difference Result 88 states and 99 transitions. [2022-02-20 23:46:05,654 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:05,654 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:46:05,654 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:05,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 73 transitions. [2022-02-20 23:46:05,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 73 transitions. [2022-02-20 23:46:05,656 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 73 transitions. [2022-02-20 23:46:05,699 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,700 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:46:05,700 INFO L226 Difference]: Without dead ends: 88 [2022-02-20 23:46:05,701 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:46:05,703 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 14 mSDsluCounter, 28 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 84 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:05,704 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 84 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:05,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-02-20 23:46:05,711 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 88. [2022-02-20 23:46:05,711 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:05,711 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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:46:05,712 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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:46:05,712 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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:46:05,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,713 INFO L93 Difference]: Finished difference Result 88 states and 99 transitions. [2022-02-20 23:46:05,713 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 99 transitions. [2022-02-20 23:46:05,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,714 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,714 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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 88 states. [2022-02-20 23:46:05,714 INFO L87 Difference]: Start difference. First operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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 88 states. [2022-02-20 23:46:05,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,716 INFO L93 Difference]: Finished difference Result 88 states and 99 transitions. [2022-02-20 23:46:05,716 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 99 transitions. [2022-02-20 23:46:05,716 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,716 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,716 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:05,716 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:05,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 67 states have (on average 1.4776119402985075) internal successors, (99), 87 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:46:05,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 99 transitions. [2022-02-20 23:46:05,718 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 99 transitions. Word has length 16 [2022-02-20 23:46:05,718 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:05,718 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 99 transitions. [2022-02-20 23:46:05,718 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,718 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 99 transitions. [2022-02-20 23:46:05,719 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:46:05,719 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:05,719 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:05,719 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:46:05,719 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:05,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:05,720 INFO L85 PathProgramCache]: Analyzing trace with hash 1763344639, now seen corresponding path program 1 times [2022-02-20 23:46:05,720 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:05,721 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1026344989] [2022-02-20 23:46:05,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:05,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:05,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:05,800 INFO L290 TraceCheckUtils]: 0: Hoare triple {3209#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(12, 2); {3209#true} is VALID [2022-02-20 23:46:05,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {3209#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {3209#true} is VALID [2022-02-20 23:46:05,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {3209#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3209#true} is VALID [2022-02-20 23:46:05,801 INFO L290 TraceCheckUtils]: 3: Hoare triple {3209#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {3209#true} is VALID [2022-02-20 23:46:05,801 INFO L290 TraceCheckUtils]: 4: Hoare triple {3209#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {3209#true} is VALID [2022-02-20 23:46:05,801 INFO L290 TraceCheckUtils]: 5: Hoare triple {3209#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {3209#true} is VALID [2022-02-20 23:46:05,801 INFO L290 TraceCheckUtils]: 6: Hoare triple {3209#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {3209#true} is VALID [2022-02-20 23:46:05,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {3209#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: L542 {3209#true} is VALID [2022-02-20 23:46:05,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {3209#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: L543 {3209#true} is VALID [2022-02-20 23:46:05,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {3209#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {3209#true} is VALID [2022-02-20 23:46:05,802 INFO L290 TraceCheckUtils]: 10: Hoare triple {3209#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {3209#true} is VALID [2022-02-20 23:46:05,802 INFO L290 TraceCheckUtils]: 11: Hoare triple {3209#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {3209#true} is VALID [2022-02-20 23:46:05,803 INFO L290 TraceCheckUtils]: 12: Hoare triple {3209#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {3211#(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:46:05,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {3211#(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); {3211#(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:46:05,804 INFO L290 TraceCheckUtils]: 14: Hoare triple {3211#(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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {3211#(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:46:05,808 INFO L290 TraceCheckUtils]: 15: Hoare triple {3211#(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); {3210#false} is VALID [2022-02-20 23:46:05,808 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:46:05,809 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:05,809 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1026344989] [2022-02-20 23:46:05,809 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1026344989] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:05,809 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:05,809 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:46:05,809 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [615933144] [2022-02-20 23:46:05,810 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:05,810 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:46:05,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:05,811 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,834 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:46:05,835 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:05,835 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:46:05,836 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:46:05,836 INFO L87 Difference]: Start difference. First operand 88 states and 99 transitions. Second operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,894 INFO L93 Difference]: Finished difference Result 84 states and 91 transitions. [2022-02-20 23:46:05,894 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:46:05,894 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:46:05,894 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:05,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 69 transitions. [2022-02-20 23:46:05,895 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 69 transitions. [2022-02-20 23:46:05,896 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 69 transitions. [2022-02-20 23:46:05,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:05,925 INFO L225 Difference]: With dead ends: 84 [2022-02-20 23:46:05,925 INFO L226 Difference]: Without dead ends: 84 [2022-02-20 23:46:05,925 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:46:05,925 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 10 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:05,925 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 89 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:05,926 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2022-02-20 23:46:05,927 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 84. [2022-02-20 23:46:05,927 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:05,927 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 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:46:05,927 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 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:46:05,927 INFO L87 Difference]: Start difference. First operand 84 states. Second operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 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:46:05,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,929 INFO L93 Difference]: Finished difference Result 84 states and 91 transitions. [2022-02-20 23:46:05,929 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 91 transitions. [2022-02-20 23:46:05,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,929 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 84 states. [2022-02-20 23:46:05,934 INFO L87 Difference]: Start difference. First operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 84 states. [2022-02-20 23:46:05,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:05,935 INFO L93 Difference]: Finished difference Result 84 states and 91 transitions. [2022-02-20 23:46:05,935 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 91 transitions. [2022-02-20 23:46:05,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:05,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:05,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:05,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:05,936 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 67 states have (on average 1.3582089552238805) internal successors, (91), 83 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:46:05,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 91 transitions. [2022-02-20 23:46:05,941 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 91 transitions. Word has length 16 [2022-02-20 23:46:05,941 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:05,941 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 91 transitions. [2022-02-20 23:46:05,941 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 8.0) internal successors, (16), 3 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:05,942 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 91 transitions. [2022-02-20 23:46:05,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:46:05,942 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:05,942 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:05,942 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:46:05,942 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:05,943 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:05,943 INFO L85 PathProgramCache]: Analyzing trace with hash -1967864768, now seen corresponding path program 1 times [2022-02-20 23:46:05,943 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:05,943 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1824796684] [2022-02-20 23:46:05,943 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:05,943 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:05,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:05,984 INFO L290 TraceCheckUtils]: 0: Hoare triple {3550#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(12, 2); {3550#true} is VALID [2022-02-20 23:46:05,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {3550#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {3550#true} is VALID [2022-02-20 23:46:05,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {3550#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3550#true} is VALID [2022-02-20 23:46:05,985 INFO L290 TraceCheckUtils]: 3: Hoare triple {3550#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {3550#true} is VALID [2022-02-20 23:46:05,985 INFO L290 TraceCheckUtils]: 4: Hoare triple {3550#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {3550#true} is VALID [2022-02-20 23:46:05,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {3550#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,985 INFO L290 TraceCheckUtils]: 6: Hoare triple {3552#(= (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: L541 {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,986 INFO L290 TraceCheckUtils]: 7: Hoare triple {3552#(= (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: L542 {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,986 INFO L290 TraceCheckUtils]: 8: Hoare triple {3552#(= (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: L543 {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,986 INFO L290 TraceCheckUtils]: 9: Hoare triple {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,986 INFO L290 TraceCheckUtils]: 10: Hoare triple {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,987 INFO L290 TraceCheckUtils]: 11: Hoare triple {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {3552#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {3552#(= (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; {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,988 INFO L290 TraceCheckUtils]: 14: Hoare triple {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,988 INFO L290 TraceCheckUtils]: 15: Hoare triple {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,988 INFO L290 TraceCheckUtils]: 16: Hoare triple {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:05,989 INFO L290 TraceCheckUtils]: 17: Hoare triple {3553#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(1 == #valid[main_~first~0#1.base]); {3551#false} is VALID [2022-02-20 23:46:05,989 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:05,989 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:05,989 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1824796684] [2022-02-20 23:46:05,989 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1824796684] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:05,989 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:05,989 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:46:05,989 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2037441777] [2022-02-20 23:46:05,989 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:05,990 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:46:05,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:05,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,000 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:46:06,001 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:46:06,001 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:06,001 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:46:06,001 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:46:06,001 INFO L87 Difference]: Start difference. First operand 84 states and 91 transitions. Second operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,175 INFO L93 Difference]: Finished difference Result 114 states and 120 transitions. [2022-02-20 23:46:06,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:46:06,175 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:46:06,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:06,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 121 transitions. [2022-02-20 23:46:06,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 121 transitions. [2022-02-20 23:46:06,177 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 121 transitions. [2022-02-20 23:46:06,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:06,253 INFO L225 Difference]: With dead ends: 114 [2022-02-20 23:46:06,253 INFO L226 Difference]: Without dead ends: 114 [2022-02-20 23:46:06,253 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:46:06,254 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 83 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 84 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 96 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:06,254 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 84 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:06,254 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-02-20 23:46:06,255 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 86. [2022-02-20 23:46:06,255 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:06,255 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,256 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,256 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,257 INFO L93 Difference]: Finished difference Result 114 states and 120 transitions. [2022-02-20 23:46:06,257 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 120 transitions. [2022-02-20 23:46:06,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,258 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 114 states. [2022-02-20 23:46:06,258 INFO L87 Difference]: Start difference. First operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 114 states. [2022-02-20 23:46:06,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,259 INFO L93 Difference]: Finished difference Result 114 states and 120 transitions. [2022-02-20 23:46:06,259 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 120 transitions. [2022-02-20 23:46:06,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:06,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:06,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 69 states have (on average 1.3768115942028984) internal successors, (95), 85 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 95 transitions. [2022-02-20 23:46:06,261 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 95 transitions. Word has length 18 [2022-02-20 23:46:06,261 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:06,261 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 95 transitions. [2022-02-20 23:46:06,261 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,261 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 95 transitions. [2022-02-20 23:46:06,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:46:06,261 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:06,261 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:06,261 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:46:06,262 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr29REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:06,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:06,262 INFO L85 PathProgramCache]: Analyzing trace with hash -1967864767, now seen corresponding path program 1 times [2022-02-20 23:46:06,262 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:06,265 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [844126624] [2022-02-20 23:46:06,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:06,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:06,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:06,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {3987#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(12, 2); {3987#true} is VALID [2022-02-20 23:46:06,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {3987#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {3987#true} is VALID [2022-02-20 23:46:06,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {3987#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3987#true} is VALID [2022-02-20 23:46:06,335 INFO L290 TraceCheckUtils]: 3: Hoare triple {3987#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {3989#(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:46:06,336 INFO L290 TraceCheckUtils]: 4: Hoare triple {3989#(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); {3989#(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:46:06,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {3989#(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: L539-2 {3989#(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:46:06,337 INFO L290 TraceCheckUtils]: 6: Hoare triple {3989#(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: L541 {3989#(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:46:06,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {3989#(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: L542 {3989#(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:46:06,338 INFO L290 TraceCheckUtils]: 8: Hoare triple {3989#(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: L543 {3989#(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:46:06,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {3989#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {3989#(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:46:06,339 INFO L290 TraceCheckUtils]: 10: Hoare triple {3989#(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; {3989#(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:46:06,339 INFO L290 TraceCheckUtils]: 11: Hoare triple {3989#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {3989#(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:46:06,340 INFO L290 TraceCheckUtils]: 12: Hoare triple {3989#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {3989#(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:46:06,340 INFO L290 TraceCheckUtils]: 13: Hoare triple {3989#(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; {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:06,340 INFO L290 TraceCheckUtils]: 14: Hoare triple {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:06,341 INFO L290 TraceCheckUtils]: 15: Hoare triple {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:06,341 INFO L290 TraceCheckUtils]: 16: Hoare triple {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:06,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {3990#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 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); {3988#false} is VALID [2022-02-20 23:46:06,342 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:06,342 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:06,342 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [844126624] [2022-02-20 23:46:06,342 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [844126624] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:06,343 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:06,343 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:46:06,343 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1215768473] [2022-02-20 23:46:06,343 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:06,343 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:46:06,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:06,344 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,355 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:46:06,355 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:46:06,356 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:06,356 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:46:06,356 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:46:06,356 INFO L87 Difference]: Start difference. First operand 86 states and 95 transitions. Second operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,544 INFO L93 Difference]: Finished difference Result 153 states and 172 transitions. [2022-02-20 23:46:06,545 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:46:06,545 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:46:06,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:06,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 135 transitions. [2022-02-20 23:46:06,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 135 transitions. [2022-02-20 23:46:06,546 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 135 transitions. [2022-02-20 23:46:06,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:06,631 INFO L225 Difference]: With dead ends: 153 [2022-02-20 23:46:06,631 INFO L226 Difference]: Without dead ends: 153 [2022-02-20 23:46:06,631 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:46:06,632 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 72 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 93 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 93 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:06,632 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 118 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:06,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 153 states. [2022-02-20 23:46:06,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 153 to 109. [2022-02-20 23:46:06,634 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:06,634 INFO L82 GeneralOperation]: Start isEquivalent. First operand 153 states. Second operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,634 INFO L74 IsIncluded]: Start isIncluded. First operand 153 states. Second operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,634 INFO L87 Difference]: Start difference. First operand 153 states. Second operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,636 INFO L93 Difference]: Finished difference Result 153 states and 172 transitions. [2022-02-20 23:46:06,636 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 172 transitions. [2022-02-20 23:46:06,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,636 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 153 states. [2022-02-20 23:46:06,636 INFO L87 Difference]: Start difference. First operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 153 states. [2022-02-20 23:46:06,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,638 INFO L93 Difference]: Finished difference Result 153 states and 172 transitions. [2022-02-20 23:46:06,638 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 172 transitions. [2022-02-20 23:46:06,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,638 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:06,638 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:06,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 92 states have (on average 1.3804347826086956) internal successors, (127), 108 states have internal predecessors, (127), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 127 transitions. [2022-02-20 23:46:06,640 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 127 transitions. Word has length 18 [2022-02-20 23:46:06,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:06,640 INFO L470 AbstractCegarLoop]: Abstraction has 109 states and 127 transitions. [2022-02-20 23:46:06,640 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 6.0) internal successors, (18), 4 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,640 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 127 transitions. [2022-02-20 23:46:06,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:46:06,641 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:06,641 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:06,641 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:46:06,641 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:06,642 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:06,642 INFO L85 PathProgramCache]: Analyzing trace with hash -874266265, now seen corresponding path program 1 times [2022-02-20 23:46:06,642 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:06,642 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [57435586] [2022-02-20 23:46:06,642 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:06,642 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:06,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:06,674 INFO L290 TraceCheckUtils]: 0: Hoare triple {4564#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(12, 2); {4564#true} is VALID [2022-02-20 23:46:06,674 INFO L290 TraceCheckUtils]: 1: Hoare triple {4564#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {4564#true} is VALID [2022-02-20 23:46:06,674 INFO L290 TraceCheckUtils]: 2: Hoare triple {4564#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {4564#true} is VALID [2022-02-20 23:46:06,675 INFO L290 TraceCheckUtils]: 3: Hoare triple {4564#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,675 INFO L290 TraceCheckUtils]: 4: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,675 INFO L290 TraceCheckUtils]: 5: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,676 INFO L290 TraceCheckUtils]: 6: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,676 INFO L290 TraceCheckUtils]: 7: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 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: L542 {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,677 INFO L290 TraceCheckUtils]: 8: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 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: L543 {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,677 INFO L290 TraceCheckUtils]: 9: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,678 INFO L290 TraceCheckUtils]: 10: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,678 INFO L290 TraceCheckUtils]: 11: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,678 INFO L290 TraceCheckUtils]: 12: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:06,679 INFO L290 TraceCheckUtils]: 13: Hoare triple {4566#(not (= |ULTIMATE.start_main_~x~0#1.base| 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; {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:06,679 INFO L290 TraceCheckUtils]: 14: Hoare triple {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:06,679 INFO L290 TraceCheckUtils]: 15: Hoare triple {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:06,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {4567#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {4565#false} is VALID [2022-02-20 23:46:06,680 INFO L290 TraceCheckUtils]: 17: Hoare triple {4565#false} main_#res#1 := 0; {4565#false} is VALID [2022-02-20 23:46:06,680 INFO L290 TraceCheckUtils]: 18: Hoare triple {4565#false} assume !(#valid == main_old_#valid#1); {4565#false} is VALID [2022-02-20 23:46:06,680 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:06,680 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:06,680 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [57435586] [2022-02-20 23:46:06,681 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [57435586] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:06,681 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:06,681 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:46:06,681 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1387568175] [2022-02-20 23:46:06,681 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:06,681 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:06,681 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:06,682 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,693 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:06,693 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:46:06,693 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:06,693 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:46:06,694 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:46:06,694 INFO L87 Difference]: Start difference. First operand 109 states and 127 transitions. Second operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,819 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:46:06,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:46:06,819 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:06,819 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:06,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 96 transitions. [2022-02-20 23:46:06,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 96 transitions. [2022-02-20 23:46:06,821 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 96 transitions. [2022-02-20 23:46:06,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:06,883 INFO L225 Difference]: With dead ends: 113 [2022-02-20 23:46:06,883 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:46:06,883 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:06,883 INFO L933 BasicCegarLoop]: 65 mSDtfsCounter, 89 mSDsluCounter, 43 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:06,884 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 108 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:06,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:46:06,885 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 106. [2022-02-20 23:46:06,885 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:06,885 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,885 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,885 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,887 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:46:06,887 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 123 transitions. [2022-02-20 23:46:06,887 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,887 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,887 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:46:06,887 INFO L87 Difference]: Start difference. First operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 113 states. [2022-02-20 23:46:06,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:06,889 INFO L93 Difference]: Finished difference Result 113 states and 123 transitions. [2022-02-20 23:46:06,889 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 123 transitions. [2022-02-20 23:46:06,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:06,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:06,889 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:06,889 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:06,889 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 89 states have (on average 1.3258426966292134) internal successors, (118), 105 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 118 transitions. [2022-02-20 23:46:06,891 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 118 transitions. Word has length 19 [2022-02-20 23:46:06,891 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:06,891 INFO L470 AbstractCegarLoop]: Abstraction has 106 states and 118 transitions. [2022-02-20 23:46:06,891 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.75) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,891 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 118 transitions. [2022-02-20 23:46:06,891 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:46:06,891 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:06,892 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:06,892 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:46:06,892 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:06,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:06,892 INFO L85 PathProgramCache]: Analyzing trace with hash 55140128, now seen corresponding path program 1 times [2022-02-20 23:46:06,892 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:06,892 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [216901215] [2022-02-20 23:46:06,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:06,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:06,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:06,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {5018#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(12, 2); {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {5018#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 2: Hoare triple {5018#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 3: Hoare triple {5018#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 4: Hoare triple {5018#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 5: Hoare triple {5018#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {5018#true} is VALID [2022-02-20 23:46:06,950 INFO L290 TraceCheckUtils]: 6: Hoare triple {5018#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {5018#true} is VALID [2022-02-20 23:46:06,951 INFO L290 TraceCheckUtils]: 7: Hoare triple {5018#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: L542 {5020#(= |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:46:06,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {5020#(= |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: L543 {5020#(= |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:46:06,952 INFO L290 TraceCheckUtils]: 9: Hoare triple {5020#(= |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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {5020#(= |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:46:06,953 INFO L290 TraceCheckUtils]: 10: Hoare triple {5020#(= |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; {5020#(= |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:46:06,953 INFO L290 TraceCheckUtils]: 11: Hoare triple {5020#(= |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {5020#(= |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:46:06,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {5020#(= |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 !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {5020#(= |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:46:06,954 INFO L290 TraceCheckUtils]: 13: Hoare triple {5020#(= |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); {5020#(= |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:46:06,955 INFO L290 TraceCheckUtils]: 14: Hoare triple {5020#(= |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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {5021#(= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1)} is VALID [2022-02-20 23:46:06,955 INFO L290 TraceCheckUtils]: 15: Hoare triple {5021#(= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {5022#(= (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:46:06,956 INFO L290 TraceCheckUtils]: 16: Hoare triple {5022#(= (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~mem7#1.base, main_#t~mem7#1.offset; {5022#(= (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:46:06,956 INFO L290 TraceCheckUtils]: 17: Hoare triple {5022#(= (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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {5023#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} is VALID [2022-02-20 23:46:06,956 INFO L290 TraceCheckUtils]: 18: Hoare triple {5023#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} assume !(1 == #valid[main_#t~mem8#1.base]); {5019#false} is VALID [2022-02-20 23:46:06,957 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:46:06,957 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:06,957 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [216901215] [2022-02-20 23:46:06,957 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [216901215] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:06,957 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:06,957 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:46:06,957 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [163669480] [2022-02-20 23:46:06,957 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:06,958 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:06,958 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:06,958 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:06,970 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:06,970 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:46:06,970 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:06,971 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:46:06,971 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:46:06,971 INFO L87 Difference]: Start difference. First operand 106 states and 118 transitions. Second operand has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,233 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,233 INFO L93 Difference]: Finished difference Result 170 states and 187 transitions. [2022-02-20 23:46:07,234 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:46:07,234 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:07,234 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:07,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 121 transitions. [2022-02-20 23:46:07,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 121 transitions. [2022-02-20 23:46:07,235 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 121 transitions. [2022-02-20 23:46:07,308 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:07,310 INFO L225 Difference]: With dead ends: 170 [2022-02-20 23:46:07,310 INFO L226 Difference]: Without dead ends: 170 [2022-02-20 23:46:07,310 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:46:07,311 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 43 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 146 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 146 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:07,311 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 183 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 146 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:07,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 170 states. [2022-02-20 23:46:07,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 170 to 120. [2022-02-20 23:46:07,313 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:07,313 INFO L82 GeneralOperation]: Start isEquivalent. First operand 170 states. Second operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,313 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,313 INFO L87 Difference]: Start difference. First operand 170 states. Second operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,315 INFO L93 Difference]: Finished difference Result 170 states and 187 transitions. [2022-02-20 23:46:07,315 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 187 transitions. [2022-02-20 23:46:07,315 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:07,315 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:07,315 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 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 170 states. [2022-02-20 23:46:07,316 INFO L87 Difference]: Start difference. First operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 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 170 states. [2022-02-20 23:46:07,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:07,318 INFO L93 Difference]: Finished difference Result 170 states and 187 transitions. [2022-02-20 23:46:07,318 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 187 transitions. [2022-02-20 23:46:07,318 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:07,318 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:07,318 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:07,318 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:07,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 119 states have internal predecessors, (135), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 135 transitions. [2022-02-20 23:46:07,320 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 135 transitions. Word has length 19 [2022-02-20 23:46:07,320 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:07,320 INFO L470 AbstractCegarLoop]: Abstraction has 120 states and 135 transitions. [2022-02-20 23:46:07,320 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.8) internal successors, (19), 6 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,320 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 135 transitions. [2022-02-20 23:46:07,321 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:46:07,321 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:07,321 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:07,321 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 23:46:07,321 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:07,321 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:07,322 INFO L85 PathProgramCache]: Analyzing trace with hash 55140129, now seen corresponding path program 1 times [2022-02-20 23:46:07,322 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:07,322 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1562811117] [2022-02-20 23:46:07,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:07,328 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:07,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:07,505 INFO L290 TraceCheckUtils]: 0: Hoare triple {5662#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(12, 2); {5662#true} is VALID [2022-02-20 23:46:07,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {5662#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {5662#true} is VALID [2022-02-20 23:46:07,505 INFO L290 TraceCheckUtils]: 2: Hoare triple {5662#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {5662#true} is VALID [2022-02-20 23:46:07,506 INFO L290 TraceCheckUtils]: 3: Hoare triple {5662#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {5664#(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:46:07,506 INFO L290 TraceCheckUtils]: 4: Hoare triple {5664#(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); {5664#(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:46:07,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {5664#(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: L539-2 {5665#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (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:46:07,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {5665#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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: L541 {5665#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (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:46:07,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {5665#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= 20 (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: L542 {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} is VALID [2022-02-20 23:46:07,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} 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: L543 {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} is VALID [2022-02-20 23:46:07,510 INFO L290 TraceCheckUtils]: 9: Hoare triple {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} is VALID [2022-02-20 23:46:07,510 INFO L290 TraceCheckUtils]: 10: Hoare triple {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} is VALID [2022-02-20 23:46:07,511 INFO L290 TraceCheckUtils]: 11: Hoare triple {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} is VALID [2022-02-20 23:46:07,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {5666#(and (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (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|)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {5667#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= 20 (select |#length| |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|)))} is VALID [2022-02-20 23:46:07,512 INFO L290 TraceCheckUtils]: 13: Hoare triple {5667#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= 20 (select |#length| |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|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {5667#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= 20 (select |#length| |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|)))} is VALID [2022-02-20 23:46:07,512 INFO L290 TraceCheckUtils]: 14: Hoare triple {5667#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= 20 (select |#length| |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|)))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {5668#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} is VALID [2022-02-20 23:46:07,513 INFO L290 TraceCheckUtils]: 15: Hoare triple {5668#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {5669#(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:46:07,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {5669#(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~mem7#1.base, main_#t~mem7#1.offset; {5669#(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:46:07,514 INFO L290 TraceCheckUtils]: 17: Hoare triple {5669#(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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {5670#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)))} is VALID [2022-02-20 23:46:07,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {5670#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)))} assume !(4 + (4 + main_#t~mem8#1.offset) <= #length[main_#t~mem8#1.base] && 0 <= 4 + main_#t~mem8#1.offset); {5663#false} is VALID [2022-02-20 23:46:07,515 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:46:07,515 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:07,515 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1562811117] [2022-02-20 23:46:07,515 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1562811117] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:07,515 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:07,515 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:46:07,515 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [7609555] [2022-02-20 23:46:07,515 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:07,516 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:07,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:07,516 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:07,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:07,533 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:07,533 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:07,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:07,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:07,533 INFO L87 Difference]: Start difference. First operand 120 states and 135 transitions. Second operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,227 INFO L93 Difference]: Finished difference Result 184 states and 199 transitions. [2022-02-20 23:46:08,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:08,227 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:46:08,227 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:08,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-02-20 23:46:08,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-02-20 23:46:08,229 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 143 transitions. [2022-02-20 23:46:08,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:08,338 INFO L225 Difference]: With dead ends: 184 [2022-02-20 23:46:08,338 INFO L226 Difference]: Without dead ends: 184 [2022-02-20 23:46:08,338 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=79, Invalid=161, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:46:08,338 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 225 mSDsluCounter, 163 mSDsCounter, 0 mSdLazyCounter, 271 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 225 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 309 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 271 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:08,339 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [225 Valid, 194 Invalid, 309 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 271 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:46:08,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 184 states. [2022-02-20 23:46:08,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 184 to 120. [2022-02-20 23:46:08,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:08,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 184 states. Second operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,341 INFO L74 IsIncluded]: Start isIncluded. First operand 184 states. Second operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,341 INFO L87 Difference]: Start difference. First operand 184 states. Second operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,343 INFO L93 Difference]: Finished difference Result 184 states and 199 transitions. [2022-02-20 23:46:08,343 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 199 transitions. [2022-02-20 23:46:08,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:08,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:08,343 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 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 184 states. [2022-02-20 23:46:08,343 INFO L87 Difference]: Start difference. First operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 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 184 states. [2022-02-20 23:46:08,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,345 INFO L93 Difference]: Finished difference Result 184 states and 199 transitions. [2022-02-20 23:46:08,345 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 199 transitions. [2022-02-20 23:46:08,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:08,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:08,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:08,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:08,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 103 states have (on average 1.2912621359223302) internal successors, (133), 119 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 133 transitions. [2022-02-20 23:46:08,347 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 133 transitions. Word has length 19 [2022-02-20 23:46:08,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:08,347 INFO L470 AbstractCegarLoop]: Abstraction has 120 states and 133 transitions. [2022-02-20 23:46:08,347 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,347 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 133 transitions. [2022-02-20 23:46:08,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:46:08,347 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:08,347 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:08,347 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 23:46:08,347 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr30REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:08,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:08,348 INFO L85 PathProgramCache]: Analyzing trace with hash -1332429407, now seen corresponding path program 1 times [2022-02-20 23:46:08,348 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:08,348 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118486056] [2022-02-20 23:46:08,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:08,348 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:08,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:08,380 INFO L290 TraceCheckUtils]: 0: Hoare triple {6360#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(12, 2); {6360#true} is VALID [2022-02-20 23:46:08,380 INFO L290 TraceCheckUtils]: 1: Hoare triple {6360#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {6360#true} is VALID [2022-02-20 23:46:08,380 INFO L290 TraceCheckUtils]: 2: Hoare triple {6360#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 3: Hoare triple {6360#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 4: Hoare triple {6360#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 5: Hoare triple {6360#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 6: Hoare triple {6360#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {6360#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: L542 {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {6360#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: L543 {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {6360#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 10: Hoare triple {6360#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {6360#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 12: Hoare triple {6360#true} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {6360#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; {6360#true} is VALID [2022-02-20 23:46:08,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {6360#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6360#true} is VALID [2022-02-20 23:46:08,382 INFO L290 TraceCheckUtils]: 15: Hoare triple {6360#true} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {6360#true} is VALID [2022-02-20 23:46:08,382 INFO L290 TraceCheckUtils]: 16: Hoare triple {6360#true} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {6362#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) (select |#valid| |ULTIMATE.start_main_~first~0#1.base|))} is VALID [2022-02-20 23:46:08,382 INFO L290 TraceCheckUtils]: 17: Hoare triple {6362#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) (select |#valid| |ULTIMATE.start_main_~first~0#1.base|))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {6363#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} is VALID [2022-02-20 23:46:08,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {6363#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {6363#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} is VALID [2022-02-20 23:46:08,383 INFO L290 TraceCheckUtils]: 19: Hoare triple {6363#(= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1)} assume !(1 == #valid[main_~x~1#1.base]); {6361#false} is VALID [2022-02-20 23:46:08,383 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:46:08,384 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:08,384 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118486056] [2022-02-20 23:46:08,384 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [118486056] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:08,384 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:08,384 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:46:08,384 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2003887474] [2022-02-20 23:46:08,384 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:08,384 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:46:08,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:08,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:08,395 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:46:08,395 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:08,395 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:46:08,395 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:46:08,395 INFO L87 Difference]: Start difference. First operand 120 states and 133 transitions. Second operand has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,533 INFO L93 Difference]: Finished difference Result 135 states and 149 transitions. [2022-02-20 23:46:08,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:46:08,533 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:46:08,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:08,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-02-20 23:46:08,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 83 transitions. [2022-02-20 23:46:08,535 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 83 transitions. [2022-02-20 23:46:08,585 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:46:08,586 INFO L225 Difference]: With dead ends: 135 [2022-02-20 23:46:08,586 INFO L226 Difference]: Without dead ends: 135 [2022-02-20 23:46:08,586 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:08,586 INFO L933 BasicCegarLoop]: 50 mSDtfsCounter, 21 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:08,587 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 98 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:08,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-02-20 23:46:08,588 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 123. [2022-02-20 23:46:08,588 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:08,588 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,588 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,589 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,590 INFO L93 Difference]: Finished difference Result 135 states and 149 transitions. [2022-02-20 23:46:08,590 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 149 transitions. [2022-02-20 23:46:08,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:08,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:08,590 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 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 135 states. [2022-02-20 23:46:08,590 INFO L87 Difference]: Start difference. First operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 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 135 states. [2022-02-20 23:46:08,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:08,592 INFO L93 Difference]: Finished difference Result 135 states and 149 transitions. [2022-02-20 23:46:08,592 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 149 transitions. [2022-02-20 23:46:08,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:08,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:08,592 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:08,592 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:08,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 107 states have (on average 1.2990654205607477) internal successors, (139), 122 states have internal predecessors, (139), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 139 transitions. [2022-02-20 23:46:08,593 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 139 transitions. Word has length 20 [2022-02-20 23:46:08,593 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:08,593 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 139 transitions. [2022-02-20 23:46:08,593 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 6.333333333333333) internal successors, (19), 4 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,594 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 139 transitions. [2022-02-20 23:46:08,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:46:08,594 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:08,594 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:08,594 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:46:08,594 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:08,594 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:08,594 INFO L85 PathProgramCache]: Analyzing trace with hash -1332429406, now seen corresponding path program 1 times [2022-02-20 23:46:08,594 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:08,594 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1049731589] [2022-02-20 23:46:08,594 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:08,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:08,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:08,641 INFO L290 TraceCheckUtils]: 0: Hoare triple {6896#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(12, 2); {6896#true} is VALID [2022-02-20 23:46:08,642 INFO L290 TraceCheckUtils]: 1: Hoare triple {6896#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {6896#true} is VALID [2022-02-20 23:46:08,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {6896#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6896#true} is VALID [2022-02-20 23:46:08,643 INFO L290 TraceCheckUtils]: 3: Hoare triple {6896#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {6898#(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:46:08,643 INFO L290 TraceCheckUtils]: 4: Hoare triple {6898#(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); {6898#(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:46:08,644 INFO L290 TraceCheckUtils]: 5: Hoare triple {6898#(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: L539-2 {6898#(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:46:08,644 INFO L290 TraceCheckUtils]: 6: Hoare triple {6898#(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: L541 {6898#(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:46:08,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {6898#(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: L542 {6898#(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:46:08,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {6898#(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: L543 {6898#(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:46:08,645 INFO L290 TraceCheckUtils]: 9: Hoare triple {6898#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {6898#(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:46:08,646 INFO L290 TraceCheckUtils]: 10: Hoare triple {6898#(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; {6898#(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:46:08,646 INFO L290 TraceCheckUtils]: 11: Hoare triple {6898#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {6898#(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:46:08,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {6898#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {6898#(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:46:08,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {6898#(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; {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:08,648 INFO L290 TraceCheckUtils]: 14: Hoare triple {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:08,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:08,652 INFO L290 TraceCheckUtils]: 16: Hoare triple {6899#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:08,652 INFO L290 TraceCheckUtils]: 17: Hoare triple {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:08,652 INFO L290 TraceCheckUtils]: 18: Hoare triple {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:08,653 INFO L290 TraceCheckUtils]: 19: Hoare triple {6900#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 20 (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); {6897#false} is VALID [2022-02-20 23:46:08,653 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:08,653 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:08,653 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1049731589] [2022-02-20 23:46:08,653 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1049731589] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:08,653 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:08,653 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:46:08,653 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [307937625] [2022-02-20 23:46:08,653 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:08,654 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:46:08,654 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:08,654 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:08,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:08,666 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:46:08,666 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:08,666 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:46:08,666 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:08,666 INFO L87 Difference]: Start difference. First operand 123 states and 139 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,025 INFO L93 Difference]: Finished difference Result 194 states and 217 transitions. [2022-02-20 23:46:09,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:46:09,025 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:46:09,025 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:09,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 153 transitions. [2022-02-20 23:46:09,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 153 transitions. [2022-02-20 23:46:09,027 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 153 transitions. [2022-02-20 23:46:09,135 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:09,137 INFO L225 Difference]: With dead ends: 194 [2022-02-20 23:46:09,137 INFO L226 Difference]: Without dead ends: 194 [2022-02-20 23:46:09,137 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:46:09,138 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 111 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 152 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 154 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 152 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:09,138 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [111 Valid, 132 Invalid, 154 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 152 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:09,138 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states. [2022-02-20 23:46:09,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 135. [2022-02-20 23:46:09,139 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:09,140 INFO L82 GeneralOperation]: Start isEquivalent. First operand 194 states. Second operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,140 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,140 INFO L87 Difference]: Start difference. First operand 194 states. Second operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,142 INFO L93 Difference]: Finished difference Result 194 states and 217 transitions. [2022-02-20 23:46:09,142 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 217 transitions. [2022-02-20 23:46:09,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:09,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:09,142 INFO L74 IsIncluded]: Start isIncluded. First operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 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 194 states. [2022-02-20 23:46:09,143 INFO L87 Difference]: Start difference. First operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 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 194 states. [2022-02-20 23:46:09,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,145 INFO L93 Difference]: Finished difference Result 194 states and 217 transitions. [2022-02-20 23:46:09,145 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 217 transitions. [2022-02-20 23:46:09,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:09,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:09,145 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:09,145 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:09,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 135 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 134 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 135 states to 135 states and 158 transitions. [2022-02-20 23:46:09,146 INFO L78 Accepts]: Start accepts. Automaton has 135 states and 158 transitions. Word has length 20 [2022-02-20 23:46:09,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:09,146 INFO L470 AbstractCegarLoop]: Abstraction has 135 states and 158 transitions. [2022-02-20 23:46:09,147 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 5 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,147 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 158 transitions. [2022-02-20 23:46:09,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:46:09,147 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:09,147 INFO L514 BasicCegarLoop]: trace histogram [2, 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:46:09,147 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:46:09,147 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:09,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:09,147 INFO L85 PathProgramCache]: Analyzing trace with hash -316635569, now seen corresponding path program 1 times [2022-02-20 23:46:09,148 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:09,148 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1655482776] [2022-02-20 23:46:09,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:09,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:09,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:09,214 INFO L290 TraceCheckUtils]: 0: Hoare triple {7627#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(12, 2); {7627#true} is VALID [2022-02-20 23:46:09,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {7627#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {7627#true} is VALID [2022-02-20 23:46:09,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {7627#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {7627#true} is VALID [2022-02-20 23:46:09,214 INFO L290 TraceCheckUtils]: 3: Hoare triple {7627#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {7627#true} is VALID [2022-02-20 23:46:09,214 INFO L290 TraceCheckUtils]: 4: Hoare triple {7627#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {7627#true} is VALID [2022-02-20 23:46:09,215 INFO L290 TraceCheckUtils]: 5: Hoare triple {7627#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {7627#true} is VALID [2022-02-20 23:46:09,215 INFO L290 TraceCheckUtils]: 6: Hoare triple {7627#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {7627#true} is VALID [2022-02-20 23:46:09,215 INFO L290 TraceCheckUtils]: 7: Hoare triple {7627#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: L542 {7629#(= |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:46:09,216 INFO L290 TraceCheckUtils]: 8: Hoare triple {7629#(= |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: L543 {7629#(= |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:46:09,216 INFO L290 TraceCheckUtils]: 9: Hoare triple {7629#(= |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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {7629#(= |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:46:09,217 INFO L290 TraceCheckUtils]: 10: Hoare triple {7629#(= |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; {7629#(= |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:46:09,217 INFO L290 TraceCheckUtils]: 11: Hoare triple {7629#(= |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {7629#(= |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:46:09,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {7629#(= |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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {7629#(= |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:46:09,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {7629#(= |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; {7630#(= (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:46:09,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {7630#(= (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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {7630#(= (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:46:09,218 INFO L290 TraceCheckUtils]: 15: Hoare triple {7630#(= (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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {7630#(= (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:46:09,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {7630#(= (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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {7631#(= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:09,219 INFO L290 TraceCheckUtils]: 17: Hoare triple {7631#(= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {7632#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:09,220 INFO L290 TraceCheckUtils]: 18: Hoare triple {7632#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {7632#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:09,220 INFO L290 TraceCheckUtils]: 19: Hoare triple {7632#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {7633#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:46:09,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {7633#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {7634#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:09,221 INFO L290 TraceCheckUtils]: 21: Hoare triple {7634#(= (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; {7634#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:09,221 INFO L290 TraceCheckUtils]: 22: Hoare triple {7634#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {7628#false} is VALID [2022-02-20 23:46:09,221 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:09,221 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:09,221 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1655482776] [2022-02-20 23:46:09,221 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1655482776] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:09,221 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:09,221 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:46:09,222 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2112725753] [2022-02-20 23:46:09,222 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:09,222 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,222 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:09,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,237 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:46:09,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:46:09,238 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:09,238 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:46:09,238 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:46:09,238 INFO L87 Difference]: Start difference. First operand 135 states and 158 transitions. Second operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,733 INFO L93 Difference]: Finished difference Result 200 states and 231 transitions. [2022-02-20 23:46:09,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:46:09,733 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:09,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-02-20 23:46:09,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-02-20 23:46:09,734 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-02-20 23:46:09,820 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:09,822 INFO L225 Difference]: With dead ends: 200 [2022-02-20 23:46:09,822 INFO L226 Difference]: Without dead ends: 200 [2022-02-20 23:46:09,822 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=53, Invalid=157, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:46:09,823 INFO L933 BasicCegarLoop]: 45 mSDtfsCounter, 83 mSDsluCounter, 180 mSDsCounter, 0 mSdLazyCounter, 245 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 225 SdHoareTripleChecker+Invalid, 253 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 245 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:09,823 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 225 Invalid, 253 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 245 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:46:09,823 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-02-20 23:46:09,824 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 144. [2022-02-20 23:46:09,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:09,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,825 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,825 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,827 INFO L93 Difference]: Finished difference Result 200 states and 231 transitions. [2022-02-20 23:46:09,827 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 231 transitions. [2022-02-20 23:46:09,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:09,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:09,828 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 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 200 states. [2022-02-20 23:46:09,828 INFO L87 Difference]: Start difference. First operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 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 200 states. [2022-02-20 23:46:09,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:09,830 INFO L93 Difference]: Finished difference Result 200 states and 231 transitions. [2022-02-20 23:46:09,832 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 231 transitions. [2022-02-20 23:46:09,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:09,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:09,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:09,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:09,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 128 states have (on average 1.328125) internal successors, (170), 143 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:09,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 170 transitions. [2022-02-20 23:46:09,834 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 170 transitions. Word has length 23 [2022-02-20 23:46:09,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:09,834 INFO L470 AbstractCegarLoop]: Abstraction has 144 states and 170 transitions. [2022-02-20 23:46:09,834 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 8 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:46:09,834 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 170 transitions. [2022-02-20 23:46:09,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:46:09,834 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:09,834 INFO L514 BasicCegarLoop]: trace histogram [2, 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:46:09,834 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:46:09,835 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr33REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:09,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:09,835 INFO L85 PathProgramCache]: Analyzing trace with hash -316635568, now seen corresponding path program 1 times [2022-02-20 23:46:09,835 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:09,835 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1756691197] [2022-02-20 23:46:09,835 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:09,835 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:09,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:09,915 INFO L290 TraceCheckUtils]: 0: Hoare triple {8396#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(12, 2); {8396#true} is VALID [2022-02-20 23:46:09,915 INFO L290 TraceCheckUtils]: 1: Hoare triple {8396#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {8396#true} is VALID [2022-02-20 23:46:09,915 INFO L290 TraceCheckUtils]: 2: Hoare triple {8396#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {8396#true} is VALID [2022-02-20 23:46:09,916 INFO L290 TraceCheckUtils]: 3: Hoare triple {8396#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {8396#true} is VALID [2022-02-20 23:46:09,916 INFO L290 TraceCheckUtils]: 4: Hoare triple {8396#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {8396#true} is VALID [2022-02-20 23:46:09,916 INFO L290 TraceCheckUtils]: 5: Hoare triple {8396#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {8396#true} is VALID [2022-02-20 23:46:09,916 INFO L290 TraceCheckUtils]: 6: Hoare triple {8396#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {8396#true} is VALID [2022-02-20 23:46:09,916 INFO L290 TraceCheckUtils]: 7: Hoare triple {8396#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: L542 {8398#(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:46:09,917 INFO L290 TraceCheckUtils]: 8: Hoare triple {8398#(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: L543 {8398#(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:46:09,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {8398#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {8398#(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:46:09,922 INFO L290 TraceCheckUtils]: 10: Hoare triple {8398#(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; {8398#(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:46:09,922 INFO L290 TraceCheckUtils]: 11: Hoare triple {8398#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {8398#(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:46:09,923 INFO L290 TraceCheckUtils]: 12: Hoare triple {8398#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {8398#(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:46:09,924 INFO L290 TraceCheckUtils]: 13: Hoare triple {8398#(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; {8399#(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:46:09,925 INFO L290 TraceCheckUtils]: 14: Hoare triple {8399#(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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {8399#(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:46:09,926 INFO L290 TraceCheckUtils]: 15: Hoare triple {8399#(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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8399#(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:46:09,926 INFO L290 TraceCheckUtils]: 16: Hoare triple {8399#(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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {8400#(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:46:09,927 INFO L290 TraceCheckUtils]: 17: Hoare triple {8400#(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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {8400#(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:46:09,927 INFO L290 TraceCheckUtils]: 18: Hoare triple {8400#(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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {8400#(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:46:09,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {8400#(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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {8401#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| |ULTIMATE.start_main_~x~1#1.offset|) (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:09,928 INFO L290 TraceCheckUtils]: 20: Hoare triple {8401#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| |ULTIMATE.start_main_~x~1#1.offset|) (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {8402#(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:46:09,928 INFO L290 TraceCheckUtils]: 21: Hoare triple {8402#(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; {8397#false} is VALID [2022-02-20 23:46:09,928 INFO L290 TraceCheckUtils]: 22: Hoare triple {8397#false} assume !(4 + main_~y~1#1.offset <= #length[main_~y~1#1.base] && 0 <= main_~y~1#1.offset); {8397#false} is VALID [2022-02-20 23:46:09,929 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:09,929 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:09,929 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1756691197] [2022-02-20 23:46:09,929 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1756691197] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:09,929 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:09,929 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:46:09,929 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [694811541] [2022-02-20 23:46:09,929 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:09,929 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:09,930 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:09,930 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:09,943 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:46:09,944 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:46:09,944 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:09,944 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:46:09,944 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:46:09,944 INFO L87 Difference]: Start difference. First operand 144 states and 170 transitions. Second operand has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:10,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,341 INFO L93 Difference]: Finished difference Result 195 states and 225 transitions. [2022-02-20 23:46:10,341 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:10,341 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:10,341 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:10,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:10,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 131 transitions. [2022-02-20 23:46:10,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:10,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 131 transitions. [2022-02-20 23:46:10,342 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 131 transitions. [2022-02-20 23:46:10,444 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:10,446 INFO L225 Difference]: With dead ends: 195 [2022-02-20 23:46:10,446 INFO L226 Difference]: Without dead ends: 195 [2022-02-20 23:46:10,446 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:46:10,447 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 93 mSDsluCounter, 188 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 167 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:10,447 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [93 Valid, 236 Invalid, 167 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:10,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-02-20 23:46:10,449 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 143. [2022-02-20 23:46:10,449 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:10,449 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,449 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,449 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,452 INFO L93 Difference]: Finished difference Result 195 states and 225 transitions. [2022-02-20 23:46:10,452 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 225 transitions. [2022-02-20 23:46:10,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:10,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:10,452 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 195 states. [2022-02-20 23:46:10,452 INFO L87 Difference]: Start difference. First operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 195 states. [2022-02-20 23:46:10,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,454 INFO L93 Difference]: Finished difference Result 195 states and 225 transitions. [2022-02-20 23:46:10,455 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 225 transitions. [2022-02-20 23:46:10,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:10,455 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:10,455 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:10,455 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:10,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 127 states have (on average 1.31496062992126) internal successors, (167), 142 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 167 transitions. [2022-02-20 23:46:10,457 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 167 transitions. Word has length 23 [2022-02-20 23:46:10,457 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:10,457 INFO L470 AbstractCegarLoop]: Abstraction has 143 states and 167 transitions. [2022-02-20 23:46:10,457 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.2857142857142856) internal successors, (23), 7 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:46:10,457 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 167 transitions. [2022-02-20 23:46:10,457 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:46:10,457 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:10,457 INFO L514 BasicCegarLoop]: trace histogram [2, 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:46:10,457 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:46:10,457 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr38ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:10,458 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:10,458 INFO L85 PathProgramCache]: Analyzing trace with hash -1225769432, now seen corresponding path program 1 times [2022-02-20 23:46:10,458 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:10,458 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2143610329] [2022-02-20 23:46:10,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:10,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:10,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:10,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {9146#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(12, 2); {9146#true} is VALID [2022-02-20 23:46:10,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {9146#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {9146#true} is VALID [2022-02-20 23:46:10,517 INFO L290 TraceCheckUtils]: 2: Hoare triple {9146#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9146#true} is VALID [2022-02-20 23:46:10,518 INFO L290 TraceCheckUtils]: 3: Hoare triple {9146#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,518 INFO L290 TraceCheckUtils]: 4: Hoare triple {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {9148#(<= (+ |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: L539-2 {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,519 INFO L290 TraceCheckUtils]: 6: Hoare triple {9148#(<= (+ |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: L541 {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {9148#(<= (+ |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: L542 {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,520 INFO L290 TraceCheckUtils]: 8: Hoare triple {9148#(<= (+ |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: L543 {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,520 INFO L290 TraceCheckUtils]: 9: Hoare triple {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,521 INFO L290 TraceCheckUtils]: 10: Hoare triple {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,521 INFO L290 TraceCheckUtils]: 11: Hoare triple {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,521 INFO L290 TraceCheckUtils]: 12: Hoare triple {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {9148#(<= (+ |ULTIMATE.start_main_~x~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,522 INFO L290 TraceCheckUtils]: 13: Hoare triple {9148#(<= (+ |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; {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,522 INFO L290 TraceCheckUtils]: 14: Hoare triple {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,523 INFO L290 TraceCheckUtils]: 15: Hoare triple {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,523 INFO L290 TraceCheckUtils]: 16: Hoare triple {9149#(<= (+ |ULTIMATE.start_main_~first~0#1.base| 1) |#StackHeapBarrier|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,523 INFO L290 TraceCheckUtils]: 17: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,524 INFO L290 TraceCheckUtils]: 18: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,524 INFO L290 TraceCheckUtils]: 19: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,525 INFO L290 TraceCheckUtils]: 20: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,525 INFO L290 TraceCheckUtils]: 21: Hoare triple {9150#(<= (+ 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); {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,525 INFO L290 TraceCheckUtils]: 22: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} assume 0 == main_~x~1#1.offset; {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:10,526 INFO L290 TraceCheckUtils]: 23: Hoare triple {9150#(<= (+ 1 |ULTIMATE.start_main_~x~1#1.base|) |#StackHeapBarrier|)} assume !(main_~x~1#1.base < #StackHeapBarrier); {9147#false} is VALID [2022-02-20 23:46:10,526 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:10,526 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:10,526 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2143610329] [2022-02-20 23:46:10,526 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2143610329] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:10,526 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:10,526 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:46:10,526 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [7568721] [2022-02-20 23:46:10,526 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:10,527 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:46:10,527 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:10,527 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:46:10,555 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:46:10,556 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:46:10,556 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:10,556 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:46:10,556 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:10,556 INFO L87 Difference]: Start difference. First operand 143 states and 167 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:46:10,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,816 INFO L93 Difference]: Finished difference Result 167 states and 191 transitions. [2022-02-20 23:46:10,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:46:10,817 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:46:10,817 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:10,817 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:46:10,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 112 transitions. [2022-02-20 23:46:10,818 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:46:10,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 112 transitions. [2022-02-20 23:46:10,819 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 112 transitions. [2022-02-20 23:46:10,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:10,909 INFO L225 Difference]: With dead ends: 167 [2022-02-20 23:46:10,909 INFO L226 Difference]: Without dead ends: 167 [2022-02-20 23:46:10,909 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:46:10,909 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 112 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 111 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 112 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 111 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:10,910 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [112 Valid, 148 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 111 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:10,910 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states. [2022-02-20 23:46:10,913 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 157. [2022-02-20 23:46:10,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:10,914 INFO L82 GeneralOperation]: Start isEquivalent. First operand 167 states. Second operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,914 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,914 INFO L87 Difference]: Start difference. First operand 167 states. Second operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,916 INFO L93 Difference]: Finished difference Result 167 states and 191 transitions. [2022-02-20 23:46:10,916 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 191 transitions. [2022-02-20 23:46:10,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:10,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:10,917 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 167 states. [2022-02-20 23:46:10,917 INFO L87 Difference]: Start difference. First operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 167 states. [2022-02-20 23:46:10,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:10,919 INFO L93 Difference]: Finished difference Result 167 states and 191 transitions. [2022-02-20 23:46:10,919 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 191 transitions. [2022-02-20 23:46:10,919 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:10,920 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:10,920 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:10,920 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:10,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 141 states have (on average 1.3546099290780143) internal successors, (191), 156 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:10,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 191 transitions. [2022-02-20 23:46:10,922 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 191 transitions. Word has length 24 [2022-02-20 23:46:10,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:10,922 INFO L470 AbstractCegarLoop]: Abstraction has 157 states and 191 transitions. [2022-02-20 23:46:10,922 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:46:10,922 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 191 transitions. [2022-02-20 23:46:10,922 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:46:10,922 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:10,922 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:46:10,922 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:46:10,922 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:10,923 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:10,923 INFO L85 PathProgramCache]: Analyzing trace with hash -1085033438, now seen corresponding path program 1 times [2022-02-20 23:46:10,923 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:10,923 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2092035941] [2022-02-20 23:46:10,923 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:10,923 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:10,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:11,035 INFO L290 TraceCheckUtils]: 0: Hoare triple {9818#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(12, 2); {9818#true} is VALID [2022-02-20 23:46:11,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {9818#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {9818#true} is VALID [2022-02-20 23:46:11,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {9818#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9818#true} is VALID [2022-02-20 23:46:11,036 INFO L290 TraceCheckUtils]: 3: Hoare triple {9818#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:11,037 INFO L290 TraceCheckUtils]: 4: Hoare triple {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:11,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {9820#(= |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: L539-2 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,038 INFO L290 TraceCheckUtils]: 6: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L541 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,039 INFO L290 TraceCheckUtils]: 7: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L542 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L543 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,040 INFO L290 TraceCheckUtils]: 9: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,041 INFO L290 TraceCheckUtils]: 10: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,041 INFO L290 TraceCheckUtils]: 11: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,041 INFO L290 TraceCheckUtils]: 12: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,042 INFO L290 TraceCheckUtils]: 13: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,042 INFO L290 TraceCheckUtils]: 14: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,043 INFO L290 TraceCheckUtils]: 15: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,043 INFO L290 TraceCheckUtils]: 16: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,044 INFO L290 TraceCheckUtils]: 17: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:11,044 INFO L290 TraceCheckUtils]: 18: Hoare triple {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,044 INFO L290 TraceCheckUtils]: 19: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,045 INFO L290 TraceCheckUtils]: 20: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,045 INFO L290 TraceCheckUtils]: 21: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,045 INFO L290 TraceCheckUtils]: 22: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume 0 == main_~x~1#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,045 INFO L290 TraceCheckUtils]: 23: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,046 INFO L290 TraceCheckUtils]: 24: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 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); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,046 INFO L290 TraceCheckUtils]: 25: Hoare triple {9824#(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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9819#false} is VALID [2022-02-20 23:46:11,046 INFO L290 TraceCheckUtils]: 26: Hoare triple {9819#false} assume !(1 == #valid[main_~first~0#1.base]); {9819#false} is VALID [2022-02-20 23:46:11,046 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:11,047 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:11,047 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2092035941] [2022-02-20 23:46:11,047 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2092035941] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:11,047 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [810015430] [2022-02-20 23:46:11,047 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:11,047 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:11,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:11,048 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:46:11,052 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:46:11,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:11,131 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:46:11,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:11,151 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:11,195 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:46:11,200 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:46:11,233 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,234 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,239 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,240 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,269 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,270 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:46:11,275 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,276 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:46:11,345 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,346 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,352 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,354 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,405 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,419 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,425 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:11,426 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:46:11,508 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:46:11,513 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:46:11,547 INFO L290 TraceCheckUtils]: 0: Hoare triple {9818#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(12, 2); {9818#true} is VALID [2022-02-20 23:46:11,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {9818#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {9818#true} is VALID [2022-02-20 23:46:11,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {9818#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9818#true} is VALID [2022-02-20 23:46:11,548 INFO L290 TraceCheckUtils]: 3: Hoare triple {9818#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:11,548 INFO L290 TraceCheckUtils]: 4: Hoare triple {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {9820#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:11,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {9820#(= |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: L539-2 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,550 INFO L290 TraceCheckUtils]: 6: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L541 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L542 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L543 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,552 INFO L290 TraceCheckUtils]: 9: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,552 INFO L290 TraceCheckUtils]: 10: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,553 INFO L290 TraceCheckUtils]: 11: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,553 INFO L290 TraceCheckUtils]: 12: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {9821#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,554 INFO L290 TraceCheckUtils]: 14: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:11,556 INFO L290 TraceCheckUtils]: 17: Hoare triple {9822#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:11,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,556 INFO L290 TraceCheckUtils]: 19: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume 0 == main_~x~1#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,558 INFO L290 TraceCheckUtils]: 23: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,558 INFO L290 TraceCheckUtils]: 24: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 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); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {9824#(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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9819#false} is VALID [2022-02-20 23:46:11,559 INFO L290 TraceCheckUtils]: 26: Hoare triple {9819#false} assume !(1 == #valid[main_~first~0#1.base]); {9819#false} is VALID [2022-02-20 23:46:11,559 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:11,559 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:11,773 INFO L290 TraceCheckUtils]: 26: Hoare triple {9819#false} assume !(1 == #valid[main_~first~0#1.base]); {9819#false} is VALID [2022-02-20 23:46:11,774 INFO L290 TraceCheckUtils]: 25: Hoare triple {9824#(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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9819#false} is VALID [2022-02-20 23:46:11,774 INFO L290 TraceCheckUtils]: 24: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 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); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume 0 == main_~x~1#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,775 INFO L290 TraceCheckUtils]: 21: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,776 INFO L290 TraceCheckUtils]: 19: Hoare triple {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,776 INFO L290 TraceCheckUtils]: 18: Hoare triple {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {9824#(and (= |ULTIMATE.start_main_~first~0#1.base| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:11,777 INFO L290 TraceCheckUtils]: 17: Hoare triple {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {9823#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:11,777 INFO L290 TraceCheckUtils]: 16: Hoare triple {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:11,777 INFO L290 TraceCheckUtils]: 15: Hoare triple {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:11,778 INFO L290 TraceCheckUtils]: 14: Hoare triple {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:11,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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; {9933#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:11,779 INFO L290 TraceCheckUtils]: 12: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,779 INFO L290 TraceCheckUtils]: 11: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,779 INFO L290 TraceCheckUtils]: 10: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,780 INFO L290 TraceCheckUtils]: 9: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L543 {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L542 {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,782 INFO L290 TraceCheckUtils]: 6: Hoare triple {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L541 {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {9818#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {9946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0))} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 4: Hoare triple {9818#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {9818#true} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 3: Hoare triple {9818#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {9818#true} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 2: Hoare triple {9818#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9818#true} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 1: Hoare triple {9818#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {9818#true} is VALID [2022-02-20 23:46:11,783 INFO L290 TraceCheckUtils]: 0: Hoare triple {9818#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(12, 2); {9818#true} is VALID [2022-02-20 23:46:11,783 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:11,783 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [810015430] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:11,783 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:11,783 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 6] total 9 [2022-02-20 23:46:11,784 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1507512710] [2022-02-20 23:46:11,784 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:11,784 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:46:11,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:11,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:11,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:11,814 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:11,814 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:11,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:11,814 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:11,815 INFO L87 Difference]: Start difference. First operand 157 states and 191 transitions. Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:12,215 INFO L93 Difference]: Finished difference Result 186 states and 218 transitions. [2022-02-20 23:46:12,215 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:46:12,215 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:46:12,215 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:12,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 139 transitions. [2022-02-20 23:46:12,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 139 transitions. [2022-02-20 23:46:12,217 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 139 transitions. [2022-02-20 23:46:12,292 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:46:12,294 INFO L225 Difference]: With dead ends: 186 [2022-02-20 23:46:12,294 INFO L226 Difference]: Without dead ends: 186 [2022-02-20 23:46:12,294 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 53 SyntacticMatches, 5 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:46:12,295 INFO L933 BasicCegarLoop]: 51 mSDtfsCounter, 199 mSDsluCounter, 216 mSDsCounter, 0 mSdLazyCounter, 156 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 199 SdHoareTripleChecker+Valid, 267 SdHoareTripleChecker+Invalid, 191 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:12,295 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [199 Valid, 267 Invalid, 191 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 156 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:12,295 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 186 states. [2022-02-20 23:46:12,297 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 186 to 161. [2022-02-20 23:46:12,297 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:12,297 INFO L82 GeneralOperation]: Start isEquivalent. First operand 186 states. Second operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,297 INFO L74 IsIncluded]: Start isIncluded. First operand 186 states. Second operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,297 INFO L87 Difference]: Start difference. First operand 186 states. Second operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:12,299 INFO L93 Difference]: Finished difference Result 186 states and 218 transitions. [2022-02-20 23:46:12,299 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 218 transitions. [2022-02-20 23:46:12,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:12,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:12,299 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 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 186 states. [2022-02-20 23:46:12,300 INFO L87 Difference]: Start difference. First operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 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 186 states. [2022-02-20 23:46:12,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:12,302 INFO L93 Difference]: Finished difference Result 186 states and 218 transitions. [2022-02-20 23:46:12,302 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 218 transitions. [2022-02-20 23:46:12,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:12,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:12,302 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:12,302 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:12,302 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 145 states have (on average 1.3448275862068966) internal successors, (195), 160 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 195 transitions. [2022-02-20 23:46:12,304 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 195 transitions. Word has length 27 [2022-02-20 23:46:12,304 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:12,304 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 195 transitions. [2022-02-20 23:46:12,304 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 9 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:12,304 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 195 transitions. [2022-02-20 23:46:12,305 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:46:12,305 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:12,305 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2022-02-20 23:46:12,333 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:46:12,521 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:12,521 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr24REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:12,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:12,522 INFO L85 PathProgramCache]: Analyzing trace with hash 2078846143, now seen corresponding path program 1 times [2022-02-20 23:46:12,522 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:12,522 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [34853006] [2022-02-20 23:46:12,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:12,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:12,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:12,567 INFO L290 TraceCheckUtils]: 0: Hoare triple {10716#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(12, 2); {10716#true} is VALID [2022-02-20 23:46:12,567 INFO L290 TraceCheckUtils]: 1: Hoare triple {10716#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {10716#true} is VALID [2022-02-20 23:46:12,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {10716#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10716#true} is VALID [2022-02-20 23:46:12,568 INFO L290 TraceCheckUtils]: 3: Hoare triple {10716#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,568 INFO L290 TraceCheckUtils]: 4: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {10718#(= (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: L539-2 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,569 INFO L290 TraceCheckUtils]: 6: Hoare triple {10718#(= (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: L541 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,569 INFO L290 TraceCheckUtils]: 7: Hoare triple {10718#(= (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: L542 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {10718#(= (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: L543 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,570 INFO L290 TraceCheckUtils]: 10: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,570 INFO L290 TraceCheckUtils]: 11: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,570 INFO L290 TraceCheckUtils]: 12: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,571 INFO L290 TraceCheckUtils]: 13: Hoare triple {10718#(= (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; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,572 INFO L290 TraceCheckUtils]: 15: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10720#(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:46:12,572 INFO L290 TraceCheckUtils]: 16: Hoare triple {10720#(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); {10720#(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:46:12,573 INFO L290 TraceCheckUtils]: 17: Hoare triple {10720#(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: L539-2 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,573 INFO L290 TraceCheckUtils]: 18: Hoare triple {10719#(= (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: L541 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,573 INFO L290 TraceCheckUtils]: 19: Hoare triple {10719#(= (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: L542 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {10719#(= (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: L543 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,574 INFO L290 TraceCheckUtils]: 21: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,575 INFO L290 TraceCheckUtils]: 24: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,575 INFO L290 TraceCheckUtils]: 25: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,575 INFO L290 TraceCheckUtils]: 26: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {10717#false} is VALID [2022-02-20 23:46:12,576 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:12,576 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:12,576 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [34853006] [2022-02-20 23:46:12,576 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [34853006] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:12,576 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [431755014] [2022-02-20 23:46:12,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:12,576 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:12,576 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:12,608 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:46:12,636 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:46:12,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:12,703 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:46:12,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:12,712 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:12,723 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:46:12,780 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:46:12,780 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:46:12,812 INFO L290 TraceCheckUtils]: 0: Hoare triple {10716#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(12, 2); {10716#true} is VALID [2022-02-20 23:46:12,813 INFO L290 TraceCheckUtils]: 1: Hoare triple {10716#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {10716#true} is VALID [2022-02-20 23:46:12,813 INFO L290 TraceCheckUtils]: 2: Hoare triple {10716#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10716#true} is VALID [2022-02-20 23:46:12,813 INFO L290 TraceCheckUtils]: 3: Hoare triple {10716#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,814 INFO L290 TraceCheckUtils]: 4: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {10718#(= (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: L539-2 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,814 INFO L290 TraceCheckUtils]: 6: Hoare triple {10718#(= (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: L541 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,815 INFO L290 TraceCheckUtils]: 7: Hoare triple {10718#(= (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: L542 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,815 INFO L290 TraceCheckUtils]: 8: Hoare triple {10718#(= (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: L543 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,815 INFO L290 TraceCheckUtils]: 10: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10718#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,816 INFO L290 TraceCheckUtils]: 13: Hoare triple {10718#(= (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; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,818 INFO L290 TraceCheckUtils]: 16: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,818 INFO L290 TraceCheckUtils]: 17: Hoare triple {10719#(= (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: L539-2 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,818 INFO L290 TraceCheckUtils]: 18: Hoare triple {10719#(= (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: L541 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,818 INFO L290 TraceCheckUtils]: 19: Hoare triple {10719#(= (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: L542 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {10719#(= (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: L543 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,819 INFO L290 TraceCheckUtils]: 21: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,819 INFO L290 TraceCheckUtils]: 22: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,820 INFO L290 TraceCheckUtils]: 23: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,820 INFO L290 TraceCheckUtils]: 24: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,820 INFO L290 TraceCheckUtils]: 25: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:12,821 INFO L290 TraceCheckUtils]: 26: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {10717#false} is VALID [2022-02-20 23:46:12,821 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:12,821 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:13,294 INFO L290 TraceCheckUtils]: 26: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(1 == #valid[main_~last~0#1.base]); {10717#false} is VALID [2022-02-20 23:46:13,294 INFO L290 TraceCheckUtils]: 25: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,295 INFO L290 TraceCheckUtils]: 24: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,295 INFO L290 TraceCheckUtils]: 23: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,295 INFO L290 TraceCheckUtils]: 22: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,296 INFO L290 TraceCheckUtils]: 21: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,296 INFO L290 TraceCheckUtils]: 20: Hoare triple {10719#(= (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: L543 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,296 INFO L290 TraceCheckUtils]: 19: Hoare triple {10719#(= (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: L542 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,297 INFO L290 TraceCheckUtils]: 18: Hoare triple {10719#(= (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: L541 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,297 INFO L290 TraceCheckUtils]: 17: Hoare triple {10719#(= (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: L539-2 {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,297 INFO L290 TraceCheckUtils]: 16: Hoare triple {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,298 INFO L290 TraceCheckUtils]: 15: Hoare triple {10835#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~last~0#1.base|) 1)))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10719#(= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1)} is VALID [2022-02-20 23:46:13,298 INFO L290 TraceCheckUtils]: 14: Hoare triple {10835#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~last~0#1.base|) 1)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10835#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~last~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |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; {10835#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~last~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,320 INFO L290 TraceCheckUtils]: 12: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,321 INFO L290 TraceCheckUtils]: 11: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,322 INFO L290 TraceCheckUtils]: 10: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,322 INFO L290 TraceCheckUtils]: 9: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,323 INFO L290 TraceCheckUtils]: 8: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |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: L543 {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,323 INFO L290 TraceCheckUtils]: 7: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |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: L542 {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,324 INFO L290 TraceCheckUtils]: 6: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |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: L541 {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,324 INFO L290 TraceCheckUtils]: 5: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |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: L539-2 {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,325 INFO L290 TraceCheckUtils]: 4: Hoare triple {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,325 INFO L290 TraceCheckUtils]: 3: Hoare triple {10716#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10842#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_33| Int) (v_ArrVal_658 Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_33| v_ArrVal_658) |ULTIMATE.start_main_~x~0#1.base|) 1)))} is VALID [2022-02-20 23:46:13,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {10716#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10716#true} is VALID [2022-02-20 23:46:13,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {10716#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {10716#true} is VALID [2022-02-20 23:46:13,326 INFO L290 TraceCheckUtils]: 0: Hoare triple {10716#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(12, 2); {10716#true} is VALID [2022-02-20 23:46:13,326 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:13,326 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [431755014] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:13,326 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:13,326 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 3, 4] total 6 [2022-02-20 23:46:13,327 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1984248696] [2022-02-20 23:46:13,327 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:13,328 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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 27 [2022-02-20 23:46:13,328 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:13,329 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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:46:13,356 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:46:13,357 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:46:13,357 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:13,358 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:46:13,359 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:46:13,359 INFO L87 Difference]: Start difference. First operand 161 states and 195 transitions. Second operand has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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:46:13,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,655 INFO L93 Difference]: Finished difference Result 245 states and 284 transitions. [2022-02-20 23:46:13,655 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:46:13,655 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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 27 [2022-02-20 23:46:13,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:13,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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:46:13,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 170 transitions. [2022-02-20 23:46:13,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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:46:13,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 170 transitions. [2022-02-20 23:46:13,657 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 170 transitions. [2022-02-20 23:46:13,773 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:13,776 INFO L225 Difference]: With dead ends: 245 [2022-02-20 23:46:13,776 INFO L226 Difference]: Without dead ends: 245 [2022-02-20 23:46:13,776 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 56 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:46:13,777 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 131 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 131 SdHoareTripleChecker+Valid, 210 SdHoareTripleChecker+Invalid, 188 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 71 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:13,777 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [131 Valid, 210 Invalid, 188 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 109 Invalid, 0 Unknown, 71 Unchecked, 0.1s Time] [2022-02-20 23:46:13,780 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 245 states. [2022-02-20 23:46:13,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 245 to 193. [2022-02-20 23:46:13,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:13,782 INFO L82 GeneralOperation]: Start isEquivalent. First operand 245 states. Second operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:13,783 INFO L74 IsIncluded]: Start isIncluded. First operand 245 states. Second operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:13,783 INFO L87 Difference]: Start difference. First operand 245 states. Second operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:13,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,786 INFO L93 Difference]: Finished difference Result 245 states and 284 transitions. [2022-02-20 23:46:13,786 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 284 transitions. [2022-02-20 23:46:13,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:13,786 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:13,786 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 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 245 states. [2022-02-20 23:46:13,787 INFO L87 Difference]: Start difference. First operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 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 245 states. [2022-02-20 23:46:13,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:13,789 INFO L93 Difference]: Finished difference Result 245 states and 284 transitions. [2022-02-20 23:46:13,789 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 284 transitions. [2022-02-20 23:46:13,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:13,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:13,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:13,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:13,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 177 states have (on average 1.310734463276836) internal successors, (232), 192 states have internal predecessors, (232), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:13,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 232 transitions. [2022-02-20 23:46:13,792 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 232 transitions. Word has length 27 [2022-02-20 23:46:13,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:13,792 INFO L470 AbstractCegarLoop]: Abstraction has 193 states and 232 transitions. [2022-02-20 23:46:13,793 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 7.166666666666667) internal successors, (43), 7 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:46:13,793 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 232 transitions. [2022-02-20 23:46:13,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:46:13,793 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:13,793 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2022-02-20 23:46:13,809 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:46:14,007 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable19 [2022-02-20 23:46:14,007 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr25REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:14,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:14,008 INFO L85 PathProgramCache]: Analyzing trace with hash 2078846144, now seen corresponding path program 1 times [2022-02-20 23:46:14,008 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:14,008 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1418169690] [2022-02-20 23:46:14,008 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:14,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:14,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:14,084 INFO L290 TraceCheckUtils]: 0: Hoare triple {11814#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(12, 2); {11814#true} is VALID [2022-02-20 23:46:14,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {11814#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {11814#true} is VALID [2022-02-20 23:46:14,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {11814#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11814#true} is VALID [2022-02-20 23:46:14,085 INFO L290 TraceCheckUtils]: 3: Hoare triple {11814#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11816#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:14,085 INFO L290 TraceCheckUtils]: 4: Hoare triple {11816#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11816#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:14,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {11816#(= |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: L539-2 {11817#(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:46:14,086 INFO L290 TraceCheckUtils]: 6: Hoare triple {11817#(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: L541 {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,087 INFO L290 TraceCheckUtils]: 7: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L542 {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,087 INFO L290 TraceCheckUtils]: 8: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,088 INFO L290 TraceCheckUtils]: 10: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~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; {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,089 INFO L290 TraceCheckUtils]: 11: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,089 INFO L290 TraceCheckUtils]: 12: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:14,089 INFO L290 TraceCheckUtils]: 13: Hoare triple {11818#(and (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~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;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; {11819#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,092 INFO L290 TraceCheckUtils]: 14: Hoare triple {11819#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11819#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,093 INFO L290 TraceCheckUtils]: 15: Hoare triple {11819#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,093 INFO L290 TraceCheckUtils]: 16: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,094 INFO L290 TraceCheckUtils]: 17: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (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: L539-2 {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,094 INFO L290 TraceCheckUtils]: 18: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (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: L541 {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (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: L542 {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (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: L543 {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~last~0#1.base|)))} is VALID [2022-02-20 23:46:14,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {11820#(and (= |ULTIMATE.start_main_~last~0#1.offset| 0) (<= 20 (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); {11815#false} is VALID [2022-02-20 23:46:14,098 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:14,098 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:14,098 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1418169690] [2022-02-20 23:46:14,099 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1418169690] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:14,099 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [454494719] [2022-02-20 23:46:14,099 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:14,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:14,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:14,100 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:46:14,101 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:46:14,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:14,193 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:46:14,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:14,204 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:14,219 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:46:14,400 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:14,401 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:46:14,414 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:14,415 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:46:14,523 INFO L290 TraceCheckUtils]: 0: Hoare triple {11814#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(12, 2); {11814#true} is VALID [2022-02-20 23:46:14,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {11814#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {11814#true} is VALID [2022-02-20 23:46:14,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {11814#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11814#true} is VALID [2022-02-20 23:46:14,524 INFO L290 TraceCheckUtils]: 3: Hoare triple {11814#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11833#(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:46:14,524 INFO L290 TraceCheckUtils]: 4: Hoare triple {11833#(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); {11833#(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:46:14,525 INFO L290 TraceCheckUtils]: 5: Hoare triple {11833#(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: L539-2 {11833#(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:46:14,525 INFO L290 TraceCheckUtils]: 6: Hoare triple {11833#(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: L541 {11843#(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:46:14,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {11843#(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: L542 {11843#(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:46:14,526 INFO L290 TraceCheckUtils]: 8: Hoare triple {11843#(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: L543 {11843#(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:46:14,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {11843#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11843#(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:46:14,527 INFO L290 TraceCheckUtils]: 10: Hoare triple {11843#(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; {11843#(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:46:14,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {11843#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11843#(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:46:14,528 INFO L290 TraceCheckUtils]: 12: Hoare triple {11843#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11843#(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:46:14,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {11843#(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; {11865#(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:46:14,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {11865#(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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11865#(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:46:14,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {11865#(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 !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11872#(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:46:14,531 INFO L290 TraceCheckUtils]: 16: Hoare triple {11872#(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); {11872#(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:46:14,531 INFO L290 TraceCheckUtils]: 17: Hoare triple {11872#(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: L539-2 {11872#(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:46:14,532 INFO L290 TraceCheckUtils]: 18: Hoare triple {11872#(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: L541 {11872#(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:46:14,532 INFO L290 TraceCheckUtils]: 19: Hoare triple {11872#(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: L542 {11872#(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:46:14,533 INFO L290 TraceCheckUtils]: 20: Hoare triple {11872#(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: L543 {11872#(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:46:14,533 INFO L290 TraceCheckUtils]: 21: Hoare triple {11872#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11872#(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:46:14,534 INFO L290 TraceCheckUtils]: 22: Hoare triple {11872#(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; {11872#(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:46:14,534 INFO L290 TraceCheckUtils]: 23: Hoare triple {11872#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11872#(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:46:14,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {11872#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11872#(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:46:14,543 INFO L290 TraceCheckUtils]: 25: Hoare triple {11872#(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); {11872#(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:46:14,544 INFO L290 TraceCheckUtils]: 26: Hoare triple {11872#(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); {11815#false} is VALID [2022-02-20 23:46:14,544 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:14,544 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:15,119 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:46:15,235 INFO L290 TraceCheckUtils]: 26: Hoare triple {11906#(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); {11815#false} is VALID [2022-02-20 23:46:15,235 INFO L290 TraceCheckUtils]: 25: Hoare triple {11906#(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); {11906#(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:46:15,238 INFO L290 TraceCheckUtils]: 24: Hoare triple {11906#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11906#(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:46:15,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {11906#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11906#(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:46:15,240 INFO L290 TraceCheckUtils]: 22: Hoare triple {11906#(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; {11906#(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:46:15,240 INFO L290 TraceCheckUtils]: 21: Hoare triple {11906#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11906#(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:46:15,244 INFO L290 TraceCheckUtils]: 20: Hoare triple {11906#(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: L543 {11906#(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:46:15,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {11906#(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: L542 {11906#(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:46:15,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {11906#(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: L541 {11906#(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:46:15,247 INFO L290 TraceCheckUtils]: 17: Hoare triple {11906#(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: L539-2 {11906#(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:46:15,248 INFO L290 TraceCheckUtils]: 16: Hoare triple {11906#(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); {11906#(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:46:15,249 INFO L290 TraceCheckUtils]: 15: Hoare triple {11940#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_789 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11906#(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:46:15,250 INFO L290 TraceCheckUtils]: 14: Hoare triple {11940#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_789 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11940#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_789 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,252 INFO L290 TraceCheckUtils]: 13: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 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; {11940#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) (forall ((v_ArrVal_789 Int)) (<= (+ |ULTIMATE.start_main_~last~0#1.offset| 16) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~last~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,252 INFO L290 TraceCheckUtils]: 12: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,253 INFO L290 TraceCheckUtils]: 11: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,253 INFO L290 TraceCheckUtils]: 10: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,254 INFO L290 TraceCheckUtils]: 9: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,255 INFO L290 TraceCheckUtils]: 8: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 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: L543 {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,256 INFO L290 TraceCheckUtils]: 7: Hoare triple {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 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: L542 {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,257 INFO L290 TraceCheckUtils]: 6: Hoare triple {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {11947#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_789 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~x~0#1.base_35| v_ArrVal_789) |ULTIMATE.start_main_~x~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,257 INFO L290 TraceCheckUtils]: 5: Hoare triple {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,258 INFO L290 TraceCheckUtils]: 4: Hoare triple {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,258 INFO L290 TraceCheckUtils]: 3: Hoare triple {11814#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11969#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_35| Int)) (or (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_35|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_35|) 0))))} is VALID [2022-02-20 23:46:15,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {11814#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11814#true} is VALID [2022-02-20 23:46:15,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {11814#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {11814#true} is VALID [2022-02-20 23:46:15,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {11814#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(12, 2); {11814#true} is VALID [2022-02-20 23:46:15,259 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:15,259 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [454494719] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:15,259 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:15,260 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5, 5] total 14 [2022-02-20 23:46:15,261 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1433365392] [2022-02-20 23:46:15,261 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:15,262 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 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:46:15,262 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:15,262 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,324 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:15,324 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-20 23:46:15,324 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:15,324 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-20 23:46:15,325 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:46:15,325 INFO L87 Difference]: Start difference. First operand 193 states and 232 transitions. Second operand has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:15,849 INFO L93 Difference]: Finished difference Result 212 states and 249 transitions. [2022-02-20 23:46:15,849 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:46:15,849 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 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:46:15,849 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:15,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 112 transitions. [2022-02-20 23:46:15,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 112 transitions. [2022-02-20 23:46:15,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 112 transitions. [2022-02-20 23:46:15,938 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:15,940 INFO L225 Difference]: With dead ends: 212 [2022-02-20 23:46:15,940 INFO L226 Difference]: Without dead ends: 212 [2022-02-20 23:46:15,941 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 46 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=74, Invalid=198, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:46:15,941 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 281 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 281 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 270 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 68 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:15,941 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [281 Valid, 199 Invalid, 270 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 182 Invalid, 0 Unknown, 68 Unchecked, 0.1s Time] [2022-02-20 23:46:15,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-02-20 23:46:15,943 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 159. [2022-02-20 23:46:15,943 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:15,943 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,943 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,944 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:15,946 INFO L93 Difference]: Finished difference Result 212 states and 249 transitions. [2022-02-20 23:46:15,946 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 249 transitions. [2022-02-20 23:46:15,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:15,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:15,946 INFO L74 IsIncluded]: Start isIncluded. First operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 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 212 states. [2022-02-20 23:46:15,947 INFO L87 Difference]: Start difference. First operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 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 212 states. [2022-02-20 23:46:15,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:15,949 INFO L93 Difference]: Finished difference Result 212 states and 249 transitions. [2022-02-20 23:46:15,949 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 249 transitions. [2022-02-20 23:46:15,949 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:15,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:15,949 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:15,949 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:15,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 159 states, 145 states have (on average 1.3172413793103448) internal successors, (191), 158 states have internal predecessors, (191), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 159 states to 159 states and 191 transitions. [2022-02-20 23:46:15,951 INFO L78 Accepts]: Start accepts. Automaton has 159 states and 191 transitions. Word has length 27 [2022-02-20 23:46:15,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:15,952 INFO L470 AbstractCegarLoop]: Abstraction has 159 states and 191 transitions. [2022-02-20 23:46:15,952 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 5.357142857142857) internal successors, (75), 15 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:15,952 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 191 transitions. [2022-02-20 23:46:15,952 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:46:15,952 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:15,952 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:15,969 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-20 23:46:16,167 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:16,168 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:16,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:16,168 INFO L85 PathProgramCache]: Analyzing trace with hash 723701189, now seen corresponding path program 1 times [2022-02-20 23:46:16,168 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:16,168 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1430967629] [2022-02-20 23:46:16,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:16,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:16,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:16,221 INFO L290 TraceCheckUtils]: 0: Hoare triple {12787#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(12, 2); {12787#true} is VALID [2022-02-20 23:46:16,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {12787#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,222 INFO L290 TraceCheckUtils]: 2: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,222 INFO L290 TraceCheckUtils]: 3: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,223 INFO L290 TraceCheckUtils]: 4: Hoare triple {12790#(= (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); {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,223 INFO L290 TraceCheckUtils]: 5: Hoare triple {12790#(= (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: L539-2 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,224 INFO L290 TraceCheckUtils]: 6: Hoare triple {12790#(= (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: L541 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,224 INFO L290 TraceCheckUtils]: 7: Hoare triple {12790#(= (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: L542 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,225 INFO L290 TraceCheckUtils]: 8: Hoare triple {12790#(= (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: L543 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,225 INFO L290 TraceCheckUtils]: 9: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,226 INFO L290 TraceCheckUtils]: 10: Hoare triple {12790#(= (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; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,226 INFO L290 TraceCheckUtils]: 11: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,227 INFO L290 TraceCheckUtils]: 13: Hoare triple {12790#(= (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; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,227 INFO L290 TraceCheckUtils]: 14: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,228 INFO L290 TraceCheckUtils]: 15: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,228 INFO L290 TraceCheckUtils]: 16: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,228 INFO L290 TraceCheckUtils]: 17: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,229 INFO L290 TraceCheckUtils]: 18: Hoare triple {12792#(= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,229 INFO L290 TraceCheckUtils]: 19: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,229 INFO L290 TraceCheckUtils]: 20: Hoare triple {12792#(= (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~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,230 INFO L290 TraceCheckUtils]: 21: Hoare triple {12792#(= (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); {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,230 INFO L290 TraceCheckUtils]: 22: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,230 INFO L290 TraceCheckUtils]: 23: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,231 INFO L290 TraceCheckUtils]: 24: Hoare triple {12792#(= (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); {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,231 INFO L290 TraceCheckUtils]: 25: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,232 INFO L290 TraceCheckUtils]: 26: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,232 INFO L290 TraceCheckUtils]: 27: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {12788#false} is VALID [2022-02-20 23:46:16,232 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:46:16,232 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:16,232 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1430967629] [2022-02-20 23:46:16,233 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1430967629] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:16,233 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [669217694] [2022-02-20 23:46:16,233 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:16,233 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:16,233 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:16,248 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:46:16,249 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:46:16,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:16,335 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:46:16,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:16,344 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:16,428 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:46:16,468 INFO L290 TraceCheckUtils]: 0: Hoare triple {12787#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(12, 2); {12787#true} is VALID [2022-02-20 23:46:16,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {12787#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,469 INFO L290 TraceCheckUtils]: 3: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,470 INFO L290 TraceCheckUtils]: 4: Hoare triple {12790#(= (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); {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,470 INFO L290 TraceCheckUtils]: 5: Hoare triple {12790#(= (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: L539-2 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,471 INFO L290 TraceCheckUtils]: 6: Hoare triple {12790#(= (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: L541 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {12790#(= (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: L542 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {12790#(= (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: L543 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,473 INFO L290 TraceCheckUtils]: 9: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,473 INFO L290 TraceCheckUtils]: 10: Hoare triple {12790#(= (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; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,474 INFO L290 TraceCheckUtils]: 11: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,474 INFO L290 TraceCheckUtils]: 12: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,474 INFO L290 TraceCheckUtils]: 13: Hoare triple {12790#(= (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; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,475 INFO L290 TraceCheckUtils]: 15: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,475 INFO L290 TraceCheckUtils]: 16: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,476 INFO L290 TraceCheckUtils]: 17: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,476 INFO L290 TraceCheckUtils]: 18: Hoare triple {12792#(= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,476 INFO L290 TraceCheckUtils]: 19: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,477 INFO L290 TraceCheckUtils]: 20: Hoare triple {12792#(= (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~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,477 INFO L290 TraceCheckUtils]: 21: Hoare triple {12792#(= (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); {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,477 INFO L290 TraceCheckUtils]: 22: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,478 INFO L290 TraceCheckUtils]: 23: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,478 INFO L290 TraceCheckUtils]: 24: Hoare triple {12792#(= (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); {12868#(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:46:16,479 INFO L290 TraceCheckUtils]: 25: Hoare triple {12868#(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_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {12868#(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:46:16,479 INFO L290 TraceCheckUtils]: 26: Hoare triple {12868#(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; {12868#(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:46:16,480 INFO L290 TraceCheckUtils]: 27: Hoare triple {12868#(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); {12788#false} is VALID [2022-02-20 23:46:16,480 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:46:16,480 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:16,600 INFO L290 TraceCheckUtils]: 27: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {12788#false} is VALID [2022-02-20 23:46:16,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#res#1 := 0; {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,601 INFO L290 TraceCheckUtils]: 25: Hoare triple {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,602 INFO L290 TraceCheckUtils]: 24: Hoare triple {12792#(= (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); {12789#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:46:16,602 INFO L290 TraceCheckUtils]: 23: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume main_~x~1#1.base < #StackHeapBarrier; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,602 INFO L290 TraceCheckUtils]: 22: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume 0 == main_~x~1#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,603 INFO L290 TraceCheckUtils]: 21: Hoare triple {12792#(= (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); {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,603 INFO L290 TraceCheckUtils]: 20: Hoare triple {12792#(= (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~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,604 INFO L290 TraceCheckUtils]: 19: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,604 INFO L290 TraceCheckUtils]: 18: Hoare triple {12792#(= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,604 INFO L290 TraceCheckUtils]: 17: Hoare triple {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,605 INFO L290 TraceCheckUtils]: 16: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {12792#(= (store |#valid| |ULTIMATE.start_main_~x~1#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,605 INFO L290 TraceCheckUtils]: 15: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,605 INFO L290 TraceCheckUtils]: 14: Hoare triple {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {12790#(= (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; {12791#(= (store |#valid| |ULTIMATE.start_main_~first~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,606 INFO L290 TraceCheckUtils]: 12: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,607 INFO L290 TraceCheckUtils]: 11: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,607 INFO L290 TraceCheckUtils]: 10: Hoare triple {12790#(= (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; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,608 INFO L290 TraceCheckUtils]: 9: Hoare triple {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,609 INFO L290 TraceCheckUtils]: 8: Hoare triple {12790#(= (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: L543 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,609 INFO L290 TraceCheckUtils]: 7: Hoare triple {12790#(= (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: L542 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,610 INFO L290 TraceCheckUtils]: 6: Hoare triple {12790#(= (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: L541 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,610 INFO L290 TraceCheckUtils]: 5: Hoare triple {12790#(= (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: L539-2 {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,611 INFO L290 TraceCheckUtils]: 4: Hoare triple {12790#(= (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); {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,611 INFO L290 TraceCheckUtils]: 3: Hoare triple {12950#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {12790#(= (store |#valid| |ULTIMATE.start_main_~x~0#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:46:16,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {12950#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12950#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} is VALID [2022-02-20 23:46:16,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {12787#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {12950#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_37| Int)) (or (= (store |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_37|) 0))))} is VALID [2022-02-20 23:46:16,613 INFO L290 TraceCheckUtils]: 0: Hoare triple {12787#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(12, 2); {12787#true} is VALID [2022-02-20 23:46:16,613 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:46:16,613 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [669217694] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:16,613 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:16,613 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 6, 6] total 7 [2022-02-20 23:46:16,614 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [495426205] [2022-02-20 23:46:16,614 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:16,614 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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 28 [2022-02-20 23:46:16,614 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:16,614 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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:46:16,641 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:46:16,641 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:46:16,641 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:16,642 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:46:16,642 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:46:16,642 INFO L87 Difference]: Start difference. First operand 159 states and 191 transitions. Second operand has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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:46:16,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:16,953 INFO L93 Difference]: Finished difference Result 161 states and 192 transitions. [2022-02-20 23:46:16,953 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:46:16,953 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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 28 [2022-02-20 23:46:16,953 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:16,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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:46:16,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-02-20 23:46:16,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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:46:16,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-02-20 23:46:16,955 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 90 transitions. [2022-02-20 23:46:17,017 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:17,019 INFO L225 Difference]: With dead ends: 161 [2022-02-20 23:46:17,019 INFO L226 Difference]: Without dead ends: 149 [2022-02-20 23:46:17,019 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 54 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:46:17,020 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 19 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 159 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 189 SdHoareTripleChecker+Invalid, 205 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 159 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 44 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:17,020 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 189 Invalid, 205 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 159 Invalid, 0 Unknown, 44 Unchecked, 0.1s Time] [2022-02-20 23:46:17,020 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-02-20 23:46:17,021 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 149. [2022-02-20 23:46:17,021 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:17,022 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:17,022 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:17,022 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:17,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:17,024 INFO L93 Difference]: Finished difference Result 149 states and 180 transitions. [2022-02-20 23:46:17,024 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 180 transitions. [2022-02-20 23:46:17,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:17,024 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:17,025 INFO L74 IsIncluded]: Start isIncluded. First operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 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 149 states. [2022-02-20 23:46:17,025 INFO L87 Difference]: Start difference. First operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 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 149 states. [2022-02-20 23:46:17,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:17,027 INFO L93 Difference]: Finished difference Result 149 states and 180 transitions. [2022-02-20 23:46:17,027 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 180 transitions. [2022-02-20 23:46:17,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:17,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:17,027 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:17,028 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:17,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 149 states, 135 states have (on average 1.3333333333333333) internal successors, (180), 148 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:17,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 180 transitions. [2022-02-20 23:46:17,029 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 180 transitions. Word has length 28 [2022-02-20 23:46:17,029 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:17,030 INFO L470 AbstractCegarLoop]: Abstraction has 149 states and 180 transitions. [2022-02-20 23:46:17,030 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 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:46:17,030 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 180 transitions. [2022-02-20 23:46:17,030 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:46:17,030 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:17,030 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] [2022-02-20 23:46:17,051 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:46:17,249 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:17,249 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr29REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:17,251 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:17,251 INFO L85 PathProgramCache]: Analyzing trace with hash -28804244, now seen corresponding path program 1 times [2022-02-20 23:46:17,251 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:17,251 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [486246143] [2022-02-20 23:46:17,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:17,251 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:17,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:17,494 INFO L290 TraceCheckUtils]: 0: Hoare triple {13576#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(12, 2); {13576#true} is VALID [2022-02-20 23:46:17,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {13576#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {13576#true} is VALID [2022-02-20 23:46:17,494 INFO L290 TraceCheckUtils]: 2: Hoare triple {13576#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13576#true} is VALID [2022-02-20 23:46:17,495 INFO L290 TraceCheckUtils]: 3: Hoare triple {13576#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {13578#(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:46:17,495 INFO L290 TraceCheckUtils]: 4: Hoare triple {13578#(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); {13578#(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:46:17,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {13578#(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: L539-2 {13579#(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:46:17,496 INFO L290 TraceCheckUtils]: 6: Hoare triple {13579#(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: L541 {13579#(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:46:17,497 INFO L290 TraceCheckUtils]: 7: Hoare triple {13579#(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: L542 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,498 INFO L290 TraceCheckUtils]: 8: Hoare triple {13580#(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|)) (<= 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: L543 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,499 INFO L290 TraceCheckUtils]: 9: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,499 INFO L290 TraceCheckUtils]: 10: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,499 INFO L290 TraceCheckUtils]: 11: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,500 INFO L290 TraceCheckUtils]: 12: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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:46:17,501 INFO L290 TraceCheckUtils]: 13: Hoare triple {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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); {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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:46:17,501 INFO L290 TraceCheckUtils]: 14: Hoare triple {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {13582#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,502 INFO L290 TraceCheckUtils]: 15: Hoare triple {13582#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {13583#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {13583#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {13583#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:17,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {13583#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {13584#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))} is VALID [2022-02-20 23:46:17,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {13584#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {13585#(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:46:17,505 INFO L290 TraceCheckUtils]: 19: Hoare triple {13585#(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|)))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {13585#(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:46:17,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {13585#(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|)))} 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: L553 {13585#(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:46:17,506 INFO L290 TraceCheckUtils]: 21: Hoare triple {13585#(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|)))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {13585#(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:46:17,506 INFO L290 TraceCheckUtils]: 22: Hoare triple {13585#(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|)))} 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: L554 {13578#(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:46:17,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {13578#(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; {13578#(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:46:17,509 INFO L290 TraceCheckUtils]: 24: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13578#(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:46:17,509 INFO L290 TraceCheckUtils]: 25: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {13578#(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:46:17,510 INFO L290 TraceCheckUtils]: 26: Hoare triple {13578#(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; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:17,510 INFO L290 TraceCheckUtils]: 27: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:17,510 INFO L290 TraceCheckUtils]: 28: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:17,511 INFO L290 TraceCheckUtils]: 29: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:17,511 INFO L290 TraceCheckUtils]: 30: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 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); {13577#false} is VALID [2022-02-20 23:46:17,511 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:17,512 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:17,512 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [486246143] [2022-02-20 23:46:17,512 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [486246143] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:17,512 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1825560629] [2022-02-20 23:46:17,512 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:17,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:17,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:17,513 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:46:17,514 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:46:17,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:17,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 30 conjunts are in the unsatisfiable core [2022-02-20 23:46:17,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:17,632 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:17,643 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:46:17,696 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:46:17,726 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:17,727 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:46:17,757 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:17,758 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:46:17,821 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:46:17,821 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 12 treesize of output 18 [2022-02-20 23:46:17,854 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:17,854 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:46:17,932 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 18 [2022-02-20 23:46:18,049 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-02-20 23:46:18,152 INFO L290 TraceCheckUtils]: 0: Hoare triple {13576#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(12, 2); {13576#true} is VALID [2022-02-20 23:46:18,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {13576#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {13576#true} is VALID [2022-02-20 23:46:18,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {13576#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13576#true} is VALID [2022-02-20 23:46:18,153 INFO L290 TraceCheckUtils]: 3: Hoare triple {13576#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {13599#(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:46:18,154 INFO L290 TraceCheckUtils]: 4: Hoare triple {13599#(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); {13599#(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:46:18,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {13599#(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: L539-2 {13599#(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:46:18,155 INFO L290 TraceCheckUtils]: 6: Hoare triple {13599#(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: L541 {13579#(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:46:18,156 INFO L290 TraceCheckUtils]: 7: Hoare triple {13579#(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: L542 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,156 INFO L290 TraceCheckUtils]: 8: Hoare triple {13580#(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|)) (<= 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: L543 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,158 INFO L290 TraceCheckUtils]: 10: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {13580#(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|)) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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:46:18,160 INFO L290 TraceCheckUtils]: 13: Hoare triple {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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); {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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:46:18,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {13581#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {13633#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| (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.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:46:18,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {13633#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| (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.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_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {13637#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,162 INFO L290 TraceCheckUtils]: 16: Hoare triple {13637#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {13637#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:18,163 INFO L290 TraceCheckUtils]: 17: Hoare triple {13637#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {13578#(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:46:18,163 INFO L290 TraceCheckUtils]: 18: Hoare triple {13578#(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_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {13578#(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:46:18,164 INFO L290 TraceCheckUtils]: 19: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {13578#(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:46:18,164 INFO L290 TraceCheckUtils]: 20: Hoare triple {13578#(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_~y~0#1.base, 4 + main_~y~0#1.offset, 4); srcloc: L553 {13578#(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:46:18,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {13578#(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:46:18,166 INFO L290 TraceCheckUtils]: 22: Hoare triple {13578#(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_~y~0#1.base, main_~y~0#1.offset, main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L554 {13578#(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:46:18,166 INFO L290 TraceCheckUtils]: 23: Hoare triple {13578#(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; {13578#(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:46:18,166 INFO L290 TraceCheckUtils]: 24: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13578#(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:46:18,167 INFO L290 TraceCheckUtils]: 25: Hoare triple {13578#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {13578#(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:46:18,167 INFO L290 TraceCheckUtils]: 26: Hoare triple {13578#(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; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:18,168 INFO L290 TraceCheckUtils]: 27: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:18,168 INFO L290 TraceCheckUtils]: 28: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:18,169 INFO L290 TraceCheckUtils]: 29: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:18,169 INFO L290 TraceCheckUtils]: 30: Hoare triple {13586#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 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); {13577#false} is VALID [2022-02-20 23:46:18,170 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:18,170 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:18,688 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:46:18,807 INFO L290 TraceCheckUtils]: 30: Hoare triple {13683#(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); {13577#false} is VALID [2022-02-20 23:46:18,808 INFO L290 TraceCheckUtils]: 29: Hoare triple {13683#(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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {13683#(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:46:18,808 INFO L290 TraceCheckUtils]: 28: Hoare triple {13683#(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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {13683#(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:46:18,809 INFO L290 TraceCheckUtils]: 27: Hoare triple {13683#(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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13683#(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:46:18,809 INFO L290 TraceCheckUtils]: 26: Hoare triple {13696#(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; {13683#(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:46:18,810 INFO L290 TraceCheckUtils]: 25: Hoare triple {13696#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {13696#(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:46:18,810 INFO L290 TraceCheckUtils]: 24: Hoare triple {13696#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13696#(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:46:18,811 INFO L290 TraceCheckUtils]: 23: Hoare triple {13696#(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; {13696#(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:46:18,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {13696#(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: L554 {13696#(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:46:18,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {13696#(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(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {13696#(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:46:18,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {13696#(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: L553 {13696#(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:46:18,813 INFO L290 TraceCheckUtils]: 19: Hoare triple {13696#(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~mem8#1.base, main_#t~mem8#1.offset; {13696#(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:46:18,813 INFO L290 TraceCheckUtils]: 18: Hoare triple {13696#(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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {13696#(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:46:18,814 INFO L290 TraceCheckUtils]: 17: Hoare triple {13696#(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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {13696#(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:46:18,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {13696#(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~mem7#1.base, main_#t~mem7#1.offset; {13696#(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:46:18,815 INFO L290 TraceCheckUtils]: 15: Hoare triple {13696#(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~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {13696#(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:46:18,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {13696#(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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {13696#(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:46:18,816 INFO L290 TraceCheckUtils]: 13: Hoare triple {13696#(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); {13696#(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:46:18,817 INFO L290 TraceCheckUtils]: 12: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {13696#(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:46:18,817 INFO L290 TraceCheckUtils]: 11: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,818 INFO L290 TraceCheckUtils]: 10: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,820 INFO L290 TraceCheckUtils]: 8: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |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: L543 {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,821 INFO L290 TraceCheckUtils]: 7: Hoare triple {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |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: L542 {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,822 INFO L290 TraceCheckUtils]: 6: Hoare triple {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {13739#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 0)) (and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_994 Int)) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_29| v_ArrVal_994) |ULTIMATE.start_main_~x~0#1.base|))))))} is VALID [2022-02-20 23:46:18,822 INFO L290 TraceCheckUtils]: 5: Hoare triple {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} is VALID [2022-02-20 23:46:18,823 INFO L290 TraceCheckUtils]: 4: Hoare triple {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} is VALID [2022-02-20 23:46:18,824 INFO L290 TraceCheckUtils]: 3: Hoare triple {13576#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {13758#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_29| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_29|) 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_29|)))))} is VALID [2022-02-20 23:46:18,824 INFO L290 TraceCheckUtils]: 2: Hoare triple {13576#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13576#true} is VALID [2022-02-20 23:46:18,824 INFO L290 TraceCheckUtils]: 1: Hoare triple {13576#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {13576#true} is VALID [2022-02-20 23:46:18,824 INFO L290 TraceCheckUtils]: 0: Hoare triple {13576#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(12, 2); {13576#true} is VALID [2022-02-20 23:46:18,824 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:18,824 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1825560629] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:18,825 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:18,825 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 5] total 17 [2022-02-20 23:46:18,825 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [997513685] [2022-02-20 23:46:18,825 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:18,825 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 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:46:18,825 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:18,826 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:18,878 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:18,878 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:46:18,878 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:18,879 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:46:18,879 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=234, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:46:18,879 INFO L87 Difference]: Start difference. First operand 149 states and 180 transitions. Second operand has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:19,551 INFO L93 Difference]: Finished difference Result 238 states and 289 transitions. [2022-02-20 23:46:19,552 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:46:19,552 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 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:46:19,552 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:19,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 142 transitions. [2022-02-20 23:46:19,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 142 transitions. [2022-02-20 23:46:19,554 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 142 transitions. [2022-02-20 23:46:19,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:19,664 INFO L225 Difference]: With dead ends: 238 [2022-02-20 23:46:19,664 INFO L226 Difference]: Without dead ends: 238 [2022-02-20 23:46:19,664 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 131 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=137, Invalid=463, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:46:19,664 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 100 mSDsluCounter, 267 mSDsCounter, 0 mSdLazyCounter, 266 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 306 SdHoareTripleChecker+Invalid, 372 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 266 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 76 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:19,664 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 306 Invalid, 372 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 266 Invalid, 0 Unknown, 76 Unchecked, 0.2s Time] [2022-02-20 23:46:19,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 238 states. [2022-02-20 23:46:19,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 238 to 174. [2022-02-20 23:46:19,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:19,667 INFO L82 GeneralOperation]: Start isEquivalent. First operand 238 states. Second operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,667 INFO L74 IsIncluded]: Start isIncluded. First operand 238 states. Second operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,667 INFO L87 Difference]: Start difference. First operand 238 states. Second operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:19,669 INFO L93 Difference]: Finished difference Result 238 states and 289 transitions. [2022-02-20 23:46:19,670 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 289 transitions. [2022-02-20 23:46:19,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:19,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:19,670 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 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:46:19,670 INFO L87 Difference]: Start difference. First operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 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:46:19,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:19,673 INFO L93 Difference]: Finished difference Result 238 states and 289 transitions. [2022-02-20 23:46:19,673 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 289 transitions. [2022-02-20 23:46:19,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:19,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:19,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:19,673 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:19,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 160 states have (on average 1.3) internal successors, (208), 173 states have internal predecessors, (208), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 208 transitions. [2022-02-20 23:46:19,675 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 208 transitions. Word has length 31 [2022-02-20 23:46:19,675 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:19,675 INFO L470 AbstractCegarLoop]: Abstraction has 174 states and 208 transitions. [2022-02-20 23:46:19,675 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 4.235294117647059) internal successors, (72), 18 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:19,675 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 208 transitions. [2022-02-20 23:46:19,676 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:46:19,676 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:19,676 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 23:46:19,695 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:46:19,892 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,SelfDestructingSolverStorable22 [2022-02-20 23:46:19,893 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:19,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:19,893 INFO L85 PathProgramCache]: Analyzing trace with hash 36474197, now seen corresponding path program 1 times [2022-02-20 23:46:19,893 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:19,893 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1466692319] [2022-02-20 23:46:19,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:19,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:19,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:20,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {14682#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(12, 2); {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {14682#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 3: Hoare triple {14682#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 4: Hoare triple {14682#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 6: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {14682#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: L542 {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {14682#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: L543 {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {14682#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 10: Hoare triple {14682#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:20,016 INFO L290 TraceCheckUtils]: 11: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:20,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {14682#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,017 INFO L290 TraceCheckUtils]: 14: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,017 INFO L290 TraceCheckUtils]: 15: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,018 INFO L290 TraceCheckUtils]: 18: Hoare triple {14684#(= (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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {14684#(= (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: L553 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,019 INFO L290 TraceCheckUtils]: 21: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {14684#(= (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: L554 {14685#(= (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:46:20,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {14685#(= (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; {14685#(= (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:46:20,024 INFO L290 TraceCheckUtils]: 24: Hoare triple {14685#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14685#(= (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:46:20,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {14685#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14686#(or (= |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:46:20,025 INFO L290 TraceCheckUtils]: 26: Hoare triple {14686#(or (= |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); {14686#(or (= |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:46:20,025 INFO L290 TraceCheckUtils]: 27: Hoare triple {14686#(or (= |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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14687#(or (= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~y~0#1.base|))} is VALID [2022-02-20 23:46:20,026 INFO L290 TraceCheckUtils]: 28: Hoare triple {14687#(or (= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~y~0#1.base|))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14688#(= (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:46:20,026 INFO L290 TraceCheckUtils]: 29: Hoare triple {14688#(= (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~mem7#1.base, main_#t~mem7#1.offset; {14688#(= (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:46:20,027 INFO L290 TraceCheckUtils]: 30: Hoare triple {14688#(= (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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} is VALID [2022-02-20 23:46:20,027 INFO L290 TraceCheckUtils]: 31: Hoare triple {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} assume !(1 == #valid[main_#t~mem8#1.base]); {14683#false} is VALID [2022-02-20 23:46:20,027 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:20,027 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:20,027 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1466692319] [2022-02-20 23:46:20,027 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1466692319] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:20,027 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2089928857] [2022-02-20 23:46:20,027 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:20,027 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:20,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:20,033 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:46:20,034 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:46:20,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:20,143 INFO L263 TraceCheckSpWp]: Trace formula consists of 298 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:46:20,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:20,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:20,170 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:46:20,194 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:46:20,220 INFO L356 Elim1Store]: treesize reduction 30, result has 37.5 percent of original size [2022-02-20 23:46:20,220 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:46:20,303 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:20,309 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 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:46:20,481 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:46:20,481 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 36 treesize of output 16 [2022-02-20 23:46:20,487 INFO L290 TraceCheckUtils]: 0: Hoare triple {14682#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(12, 2); {14682#true} is VALID [2022-02-20 23:46:20,487 INFO L290 TraceCheckUtils]: 1: Hoare triple {14682#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:20,487 INFO L290 TraceCheckUtils]: 2: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:20,487 INFO L290 TraceCheckUtils]: 3: Hoare triple {14682#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 4: Hoare triple {14682#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 5: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 6: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 7: Hoare triple {14682#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: L542 {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 8: Hoare triple {14682#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: L543 {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 9: Hoare triple {14682#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 10: Hoare triple {14682#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:20,488 INFO L290 TraceCheckUtils]: 11: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:20,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {14682#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,489 INFO L290 TraceCheckUtils]: 14: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,490 INFO L290 TraceCheckUtils]: 15: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,490 INFO L290 TraceCheckUtils]: 16: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,490 INFO L290 TraceCheckUtils]: 17: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,491 INFO L290 TraceCheckUtils]: 18: Hoare triple {14684#(= (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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,491 INFO L290 TraceCheckUtils]: 19: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,491 INFO L290 TraceCheckUtils]: 20: Hoare triple {14684#(= (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: L553 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {14684#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:20,492 INFO L290 TraceCheckUtils]: 22: Hoare triple {14684#(= (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: L554 {14685#(= (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:46:20,492 INFO L290 TraceCheckUtils]: 23: Hoare triple {14685#(= (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; {14685#(= (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:46:20,493 INFO L290 TraceCheckUtils]: 24: Hoare triple {14685#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14685#(= (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:46:20,493 INFO L290 TraceCheckUtils]: 25: Hoare triple {14685#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14768#(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:46:20,494 INFO L290 TraceCheckUtils]: 26: Hoare triple {14768#(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); {14768#(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:46:20,494 INFO L290 TraceCheckUtils]: 27: Hoare triple {14768#(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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14775#(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~mem7#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:46:20,495 INFO L290 TraceCheckUtils]: 28: Hoare triple {14775#(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~mem7#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~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14779#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |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 |#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:46:20,495 INFO L290 TraceCheckUtils]: 29: Hoare triple {14779#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |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 |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {14779#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |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 |#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:46:20,496 INFO L290 TraceCheckUtils]: 30: Hoare triple {14779#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |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 |#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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} is VALID [2022-02-20 23:46:20,496 INFO L290 TraceCheckUtils]: 31: Hoare triple {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} assume !(1 == #valid[main_#t~mem8#1.base]); {14683#false} is VALID [2022-02-20 23:46:20,497 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:20,497 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:21,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} assume !(1 == #valid[main_#t~mem8#1.base]); {14683#false} is VALID [2022-02-20 23:46:21,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {14688#(= (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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14689#(= (select |#valid| |ULTIMATE.start_main_#t~mem8#1.base|) 1)} is VALID [2022-02-20 23:46:21,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {14688#(= (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~mem7#1.base, main_#t~mem7#1.offset; {14688#(= (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:46:21,130 INFO L290 TraceCheckUtils]: 28: Hoare triple {14798#(= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14688#(= (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:46:21,130 INFO L290 TraceCheckUtils]: 27: Hoare triple {14685#(= (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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14798#(= (select |#valid| |ULTIMATE.start_main_#t~mem7#1.base|) 1)} is VALID [2022-02-20 23:46:21,131 INFO L290 TraceCheckUtils]: 26: Hoare triple {14685#(= (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); {14685#(= (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:46:21,131 INFO L290 TraceCheckUtils]: 25: Hoare triple {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14685#(= (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:46:21,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (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:46:21,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (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; {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (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:46:21,133 INFO L290 TraceCheckUtils]: 22: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |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: L554 {14808#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) (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:46:21,133 INFO L290 TraceCheckUtils]: 21: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,133 INFO L290 TraceCheckUtils]: 20: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |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: L553 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,134 INFO L290 TraceCheckUtils]: 19: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,134 INFO L290 TraceCheckUtils]: 18: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,136 INFO L290 TraceCheckUtils]: 16: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,136 INFO L290 TraceCheckUtils]: 15: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,137 INFO L290 TraceCheckUtils]: 12: Hoare triple {14682#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {14818#(forall ((v_ArrVal_1144 Int) (|v_ULTIMATE.start_main_~y~0#1.base_31| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31|) 0)) (= (select (store |#valid| |v_ULTIMATE.start_main_~y~0#1.base_31| v_ArrVal_1144) |ULTIMATE.start_main_~y~0#1.base|) 1)))} is VALID [2022-02-20 23:46:21,137 INFO L290 TraceCheckUtils]: 11: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:21,137 INFO L290 TraceCheckUtils]: 10: Hoare triple {14682#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:21,137 INFO L290 TraceCheckUtils]: 9: Hoare triple {14682#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {14682#true} is VALID [2022-02-20 23:46:21,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {14682#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: L543 {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 7: Hoare triple {14682#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: L542 {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 6: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {14682#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 4: Hoare triple {14682#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {14682#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {14682#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {14682#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {14682#true} is VALID [2022-02-20 23:46:21,138 INFO L290 TraceCheckUtils]: 0: Hoare triple {14682#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(12, 2); {14682#true} is VALID [2022-02-20 23:46:21,139 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:21,139 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2089928857] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:21,139 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:21,139 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 13 [2022-02-20 23:46:21,139 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2025688245] [2022-02-20 23:46:21,139 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:21,140 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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 32 [2022-02-20 23:46:21,141 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:21,141 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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:46:21,206 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:46:21,206 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:46:21,206 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:21,206 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:46:21,207 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:46:21,207 INFO L87 Difference]: Start difference. First operand 174 states and 208 transitions. Second operand has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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:46:21,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:21,704 INFO L93 Difference]: Finished difference Result 192 states and 227 transitions. [2022-02-20 23:46:21,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:46:21,704 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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 32 [2022-02-20 23:46:21,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:21,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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:46:21,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2022-02-20 23:46:21,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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:46:21,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2022-02-20 23:46:21,706 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 87 transitions. [2022-02-20 23:46:21,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:21,763 INFO L225 Difference]: With dead ends: 192 [2022-02-20 23:46:21,763 INFO L226 Difference]: Without dead ends: 192 [2022-02-20 23:46:21,763 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 58 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=75, Invalid=267, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:46:21,765 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 91 mSDsluCounter, 270 mSDsCounter, 0 mSdLazyCounter, 224 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 325 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 224 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 89 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:21,765 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 310 Invalid, 325 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 224 Invalid, 0 Unknown, 89 Unchecked, 0.1s Time] [2022-02-20 23:46:21,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 192 states. [2022-02-20 23:46:21,767 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 192 to 173. [2022-02-20 23:46:21,767 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:21,767 INFO L82 GeneralOperation]: Start isEquivalent. First operand 192 states. Second operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:21,767 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:21,767 INFO L87 Difference]: Start difference. First operand 192 states. Second operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:21,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:21,769 INFO L93 Difference]: Finished difference Result 192 states and 227 transitions. [2022-02-20 23:46:21,769 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 227 transitions. [2022-02-20 23:46:21,769 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:21,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:21,770 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 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 192 states. [2022-02-20 23:46:21,770 INFO L87 Difference]: Start difference. First operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 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 192 states. [2022-02-20 23:46:21,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:21,772 INFO L93 Difference]: Finished difference Result 192 states and 227 transitions. [2022-02-20 23:46:21,772 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 227 transitions. [2022-02-20 23:46:21,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:21,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:21,772 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:21,772 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:21,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 160 states have (on average 1.2875) internal successors, (206), 172 states have internal predecessors, (206), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:21,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 206 transitions. [2022-02-20 23:46:21,774 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 206 transitions. Word has length 32 [2022-02-20 23:46:21,774 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:21,774 INFO L470 AbstractCegarLoop]: Abstraction has 173 states and 206 transitions. [2022-02-20 23:46:21,774 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 4.230769230769231) internal successors, (55), 14 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:46:21,774 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 206 transitions. [2022-02-20 23:46:21,775 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:46:21,775 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:21,775 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 23:46:21,797 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-02-20 23:46:21,997 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:21,998 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:21,998 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:21,998 INFO L85 PathProgramCache]: Analyzing trace with hash 36474198, now seen corresponding path program 1 times [2022-02-20 23:46:21,998 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:21,998 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2041419845] [2022-02-20 23:46:21,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:21,999 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:22,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:22,123 INFO L290 TraceCheckUtils]: 0: Hoare triple {15644#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(12, 2); {15644#true} is VALID [2022-02-20 23:46:22,123 INFO L290 TraceCheckUtils]: 1: Hoare triple {15644#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:22,123 INFO L290 TraceCheckUtils]: 2: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 3: Hoare triple {15644#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 4: Hoare triple {15644#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 6: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {15644#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: L542 {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {15644#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: L543 {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 9: Hoare triple {15644#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 10: Hoare triple {15644#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:22,124 INFO L290 TraceCheckUtils]: 11: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:22,125 INFO L290 TraceCheckUtils]: 12: Hoare triple {15644#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:22,125 INFO L290 TraceCheckUtils]: 13: Hoare triple {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:22,126 INFO L290 TraceCheckUtils]: 14: Hoare triple {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:22,126 INFO L290 TraceCheckUtils]: 15: Hoare triple {15646#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,127 INFO L290 TraceCheckUtils]: 16: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,127 INFO L290 TraceCheckUtils]: 17: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,128 INFO L290 TraceCheckUtils]: 18: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,128 INFO L290 TraceCheckUtils]: 19: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,129 INFO L290 TraceCheckUtils]: 20: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~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: L553 {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,129 INFO L290 TraceCheckUtils]: 21: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1))} is VALID [2022-02-20 23:46:22,130 INFO L290 TraceCheckUtils]: 22: Hoare triple {15647#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~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: L554 {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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:46:22,130 INFO L290 TraceCheckUtils]: 23: Hoare triple {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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; {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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:46:22,131 INFO L290 TraceCheckUtils]: 24: Hoare triple {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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:46:22,131 INFO L290 TraceCheckUtils]: 25: Hoare triple {15648#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |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 !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15649#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:22,132 INFO L290 TraceCheckUtils]: 26: Hoare triple {15649#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15649#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:22,132 INFO L290 TraceCheckUtils]: 27: Hoare triple {15649#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15650#(and (= 12 (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} is VALID [2022-02-20 23:46:22,133 INFO L290 TraceCheckUtils]: 28: Hoare triple {15650#(and (= 12 (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15651#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 12))} is VALID [2022-02-20 23:46:22,133 INFO L290 TraceCheckUtils]: 29: Hoare triple {15651#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 12))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {15651#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 12))} is VALID [2022-02-20 23:46:22,134 INFO L290 TraceCheckUtils]: 30: Hoare triple {15651#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) 12))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15652#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|) 12))} is VALID [2022-02-20 23:46:22,134 INFO L290 TraceCheckUtils]: 31: Hoare triple {15652#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|) 12))} assume !(4 + (4 + main_#t~mem8#1.offset) <= #length[main_#t~mem8#1.base] && 0 <= 4 + main_#t~mem8#1.offset); {15645#false} is VALID [2022-02-20 23:46:22,134 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:22,135 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:22,135 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2041419845] [2022-02-20 23:46:22,135 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2041419845] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:22,135 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1030234815] [2022-02-20 23:46:22,135 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:22,135 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:22,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:22,137 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:46:22,139 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:46:22,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:22,260 INFO L263 TraceCheckSpWp]: Trace formula consists of 298 conjuncts, 33 conjunts are in the unsatisfiable core [2022-02-20 23:46:22,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:22,275 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:22,298 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:46:22,422 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:46:22,432 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:46:22,483 INFO L356 Elim1Store]: treesize reduction 4, result has 66.7 percent of original size [2022-02-20 23:46:22,484 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:46:22,491 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 22 treesize of output 24 [2022-02-20 23:46:22,660 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:22,661 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 38 treesize of output 29 [2022-02-20 23:46:22,685 INFO L356 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2022-02-20 23:46:22,686 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:46:22,971 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:46:22,972 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 42 treesize of output 22 [2022-02-20 23:46:23,016 INFO L356 Elim1Store]: treesize reduction 11, result has 8.3 percent of original size [2022-02-20 23:46:23,016 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 17 [2022-02-20 23:46:23,036 INFO L290 TraceCheckUtils]: 0: Hoare triple {15644#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(12, 2); {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {15644#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 3: Hoare triple {15644#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 4: Hoare triple {15644#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {15644#true} is VALID [2022-02-20 23:46:23,037 INFO L290 TraceCheckUtils]: 6: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {15644#true} is VALID [2022-02-20 23:46:23,038 INFO L290 TraceCheckUtils]: 7: Hoare triple {15644#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: L542 {15644#true} is VALID [2022-02-20 23:46:23,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {15644#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: L543 {15644#true} is VALID [2022-02-20 23:46:23,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {15644#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {15644#true} is VALID [2022-02-20 23:46:23,038 INFO L290 TraceCheckUtils]: 10: Hoare triple {15644#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:23,038 INFO L290 TraceCheckUtils]: 11: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:23,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {15644#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15692#(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:46:23,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {15692#(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); {15692#(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:46:23,039 INFO L290 TraceCheckUtils]: 14: Hoare triple {15692#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15692#(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:46:23,040 INFO L290 TraceCheckUtils]: 15: Hoare triple {15692#(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~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15692#(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:46:23,040 INFO L290 TraceCheckUtils]: 16: Hoare triple {15692#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {15692#(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:46:23,040 INFO L290 TraceCheckUtils]: 17: Hoare triple {15692#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15692#(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:46:23,041 INFO L290 TraceCheckUtils]: 18: Hoare triple {15692#(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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {15692#(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:46:23,041 INFO L290 TraceCheckUtils]: 19: Hoare triple {15692#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {15692#(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:46:23,042 INFO L290 TraceCheckUtils]: 20: Hoare triple {15692#(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: L553 {15692#(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:46:23,042 INFO L290 TraceCheckUtils]: 21: Hoare triple {15692#(and (= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1) (<= 0 |ULTIMATE.start_main_~y~0#1.offset|))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {15720#(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:46:23,043 INFO L290 TraceCheckUtils]: 22: Hoare triple {15720#(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: L554 {15724#(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:46:23,043 INFO L290 TraceCheckUtils]: 23: Hoare triple {15724#(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; {15724#(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:46:23,044 INFO L290 TraceCheckUtils]: 24: Hoare triple {15724#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15724#(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:46:23,045 INFO L290 TraceCheckUtils]: 25: Hoare triple {15724#(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 !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15734#(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:46:23,045 INFO L290 TraceCheckUtils]: 26: Hoare triple {15734#(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); {15734#(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:46:23,046 INFO L290 TraceCheckUtils]: 27: Hoare triple {15734#(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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15741#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_#t~mem7#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|))) (= |ULTIMATE.start_main_#t~mem7#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:46:23,047 INFO L290 TraceCheckUtils]: 28: Hoare triple {15741#(exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_#t~mem7#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|))) (= |ULTIMATE.start_main_#t~mem7#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 write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15745#(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|)) (exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (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:46:23,048 INFO L290 TraceCheckUtils]: 29: Hoare triple {15745#(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|)) (exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {15745#(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|)) (exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (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:46:23,048 INFO L290 TraceCheckUtils]: 30: Hoare triple {15745#(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|)) (exists ((|ULTIMATE.start_main_~x~0#1.base| Int) (|ULTIMATE.start_main_~x~0#1.offset| Int)) (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|))) (= (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_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)))))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15752#(and (<= (+ |ULTIMATE.start_main_#t~mem8#1.offset| 12) (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (<= 0 |ULTIMATE.start_main_#t~mem8#1.offset|))} is VALID [2022-02-20 23:46:23,049 INFO L290 TraceCheckUtils]: 31: Hoare triple {15752#(and (<= (+ |ULTIMATE.start_main_#t~mem8#1.offset| 12) (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (<= 0 |ULTIMATE.start_main_#t~mem8#1.offset|))} assume !(4 + (4 + main_#t~mem8#1.offset) <= #length[main_#t~mem8#1.base] && 0 <= 4 + main_#t~mem8#1.offset); {15645#false} is VALID [2022-02-20 23:46:23,049 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:23,049 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:23,464 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:46:23,718 INFO L290 TraceCheckUtils]: 31: Hoare triple {15756#(and (<= (+ |ULTIMATE.start_main_#t~mem8#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem8#1.offset| 4)))} assume !(4 + (4 + main_#t~mem8#1.offset) <= #length[main_#t~mem8#1.base] && 0 <= 4 + main_#t~mem8#1.offset); {15645#false} is VALID [2022-02-20 23:46:23,719 INFO L290 TraceCheckUtils]: 30: Hoare triple {15760#(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~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15756#(and (<= (+ |ULTIMATE.start_main_#t~mem8#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem8#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem8#1.offset| 4)))} is VALID [2022-02-20 23:46:23,719 INFO L290 TraceCheckUtils]: 29: Hoare triple {15760#(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~mem7#1.base, main_#t~mem7#1.offset; {15760#(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:46:23,720 INFO L290 TraceCheckUtils]: 28: Hoare triple {15767#(and (<= 0 (+ |ULTIMATE.start_main_#t~mem7#1.offset| 4)) (<= (+ |ULTIMATE.start_main_#t~mem7#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15760#(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:46:23,720 INFO L290 TraceCheckUtils]: 27: Hoare triple {15771#(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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15767#(and (<= 0 (+ |ULTIMATE.start_main_#t~mem7#1.offset| 4)) (<= (+ |ULTIMATE.start_main_#t~mem7#1.offset| 8) (select |#length| |ULTIMATE.start_main_#t~mem7#1.base|)))} is VALID [2022-02-20 23:46:23,721 INFO L290 TraceCheckUtils]: 26: Hoare triple {15771#(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); {15771#(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:46:23,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15771#(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:46:23,722 INFO L290 TraceCheckUtils]: 24: Hoare triple {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} is VALID [2022-02-20 23:46:23,723 INFO L290 TraceCheckUtils]: 23: Hoare triple {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} is VALID [2022-02-20 23:46:23,724 INFO L290 TraceCheckUtils]: 22: Hoare triple {15788#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (forall ((v_ArrVal_1296 Int)) (<= (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_34| v_ArrVal_1296) |ULTIMATE.start_main_~y~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 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: L554 {15778#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_1296 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_34| v_ArrVal_1296) (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_34|) 0))))} is VALID [2022-02-20 23:46:23,725 INFO L290 TraceCheckUtils]: 21: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {15788#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| Int)) (or (and (<= 0 (+ |ULTIMATE.start_main_~y~0#1.offset| 4)) (forall ((v_ArrVal_1296 Int)) (<= (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) (select (store |#length| |v_ULTIMATE.start_main_~y~0#1.base_34| v_ArrVal_1296) |ULTIMATE.start_main_~y~0#1.base|)))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,725 INFO L290 TraceCheckUtils]: 20: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 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: L553 {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,726 INFO L290 TraceCheckUtils]: 18: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,726 INFO L290 TraceCheckUtils]: 17: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,726 INFO L290 TraceCheckUtils]: 16: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,727 INFO L290 TraceCheckUtils]: 15: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,727 INFO L290 TraceCheckUtils]: 14: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,727 INFO L290 TraceCheckUtils]: 13: Hoare triple {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 12: Hoare triple {15644#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {15792#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_34| 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_34|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_34|) 0))))} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 11: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 10: Hoare triple {15644#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {15644#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {15644#true} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {15644#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: L543 {15644#true} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 7: Hoare triple {15644#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: L542 {15644#true} is VALID [2022-02-20 23:46:23,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 5: Hoare triple {15644#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 4: Hoare triple {15644#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 3: Hoare triple {15644#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 2: Hoare triple {15644#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 1: Hoare triple {15644#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L290 TraceCheckUtils]: 0: Hoare triple {15644#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(12, 2); {15644#true} is VALID [2022-02-20 23:46:23,729 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:23,730 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1030234815] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:23,730 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:23,730 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 22 [2022-02-20 23:46:23,730 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1206886798] [2022-02-20 23:46:23,730 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:23,730 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 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:46:23,731 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:23,731 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:23,782 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:23,782 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-02-20 23:46:23,782 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:23,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-02-20 23:46:23,782 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=438, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:46:23,783 INFO L87 Difference]: Start difference. First operand 173 states and 206 transitions. Second operand has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:24,750 INFO L93 Difference]: Finished difference Result 243 states and 289 transitions. [2022-02-20 23:46:24,750 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:24,750 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 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:46:24,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:24,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 129 transitions. [2022-02-20 23:46:24,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 129 transitions. [2022-02-20 23:46:24,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 129 transitions. [2022-02-20 23:46:24,878 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:24,881 INFO L225 Difference]: With dead ends: 243 [2022-02-20 23:46:24,881 INFO L226 Difference]: Without dead ends: 243 [2022-02-20 23:46:24,881 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 112 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=147, Invalid=665, Unknown=0, NotChecked=0, Total=812 [2022-02-20 23:46:24,882 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 144 mSDsluCounter, 525 mSDsCounter, 0 mSdLazyCounter, 319 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 144 SdHoareTripleChecker+Valid, 573 SdHoareTripleChecker+Invalid, 505 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 319 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 176 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:24,882 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [144 Valid, 573 Invalid, 505 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 319 Invalid, 0 Unknown, 176 Unchecked, 0.2s Time] [2022-02-20 23:46:24,882 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 243 states. [2022-02-20 23:46:24,883 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 243 to 164. [2022-02-20 23:46:24,883 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:24,884 INFO L82 GeneralOperation]: Start isEquivalent. First operand 243 states. Second operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,884 INFO L74 IsIncluded]: Start isIncluded. First operand 243 states. Second operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,884 INFO L87 Difference]: Start difference. First operand 243 states. Second operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:24,886 INFO L93 Difference]: Finished difference Result 243 states and 289 transitions. [2022-02-20 23:46:24,886 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 289 transitions. [2022-02-20 23:46:24,887 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:24,887 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:24,887 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 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 243 states. [2022-02-20 23:46:24,888 INFO L87 Difference]: Start difference. First operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 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 243 states. [2022-02-20 23:46:24,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:24,891 INFO L93 Difference]: Finished difference Result 243 states and 289 transitions. [2022-02-20 23:46:24,891 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 289 transitions. [2022-02-20 23:46:24,891 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:24,891 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:24,891 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:24,891 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:24,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 152 states have (on average 1.2828947368421053) internal successors, (195), 163 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 195 transitions. [2022-02-20 23:46:24,893 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 195 transitions. Word has length 32 [2022-02-20 23:46:24,893 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:24,893 INFO L470 AbstractCegarLoop]: Abstraction has 164 states and 195 transitions. [2022-02-20 23:46:24,893 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 3.272727272727273) internal successors, (72), 23 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:24,893 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 195 transitions. [2022-02-20 23:46:24,893 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:46:24,894 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:24,894 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:24,925 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-02-20 23:46:25,107 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:25,107 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:25,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:25,108 INFO L85 PathProgramCache]: Analyzing trace with hash -1911073267, now seen corresponding path program 1 times [2022-02-20 23:46:25,108 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:25,108 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613073278] [2022-02-20 23:46:25,108 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:25,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:25,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:25,229 INFO L290 TraceCheckUtils]: 0: Hoare triple {16760#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(12, 2); {16760#true} is VALID [2022-02-20 23:46:25,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {16760#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {16760#true} is VALID [2022-02-20 23:46:25,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {16760#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16760#true} is VALID [2022-02-20 23:46:25,230 INFO L290 TraceCheckUtils]: 3: Hoare triple {16760#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {16762#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:25,230 INFO L290 TraceCheckUtils]: 4: Hoare triple {16762#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {16762#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:25,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {16762#(= |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: L539-2 {16762#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:25,230 INFO L290 TraceCheckUtils]: 6: Hoare triple {16762#(= |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: L541 {16762#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:25,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {16762#(= |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: L542 {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {16763#(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|) 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|)))} 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: L543 {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {16763#(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|) 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|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,233 INFO L290 TraceCheckUtils]: 10: Hoare triple {16763#(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|) 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|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,233 INFO L290 TraceCheckUtils]: 11: Hoare triple {16763#(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|) 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|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {16763#(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|) 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|)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,234 INFO L290 TraceCheckUtils]: 13: Hoare triple {16763#(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|) 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|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16763#(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|) 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|)))} is VALID [2022-02-20 23:46:25,235 INFO L290 TraceCheckUtils]: 14: Hoare triple {16763#(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|) 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|)))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {16764#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} is VALID [2022-02-20 23:46:25,235 INFO L290 TraceCheckUtils]: 15: Hoare triple {16764#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_#t~mem7#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {16765#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:25,236 INFO L290 TraceCheckUtils]: 16: Hoare triple {16765#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {16765#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:25,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {16765#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {16766#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))} is VALID [2022-02-20 23:46:25,237 INFO L290 TraceCheckUtils]: 18: Hoare triple {16766#(and (= |ULTIMATE.start_main_#t~mem8#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,237 INFO L290 TraceCheckUtils]: 19: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,237 INFO L290 TraceCheckUtils]: 20: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L553 {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,238 INFO L290 TraceCheckUtils]: 21: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L554 {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {16767#(and (<= 8 (select |#length| |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; {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {16767#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,240 INFO L290 TraceCheckUtils]: 26: Hoare triple {16767#(and (<= 8 (select |#length| |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; {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,240 INFO L290 TraceCheckUtils]: 27: Hoare triple {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,240 INFO L290 TraceCheckUtils]: 28: Hoare triple {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:25,241 INFO L290 TraceCheckUtils]: 29: Hoare triple {16768#(and (<= 8 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:25,241 INFO L290 TraceCheckUtils]: 30: Hoare triple {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:25,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:25,242 INFO L290 TraceCheckUtils]: 32: Hoare triple {16769#(and (<= 8 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} assume !(4 + main_~x~1#1.offset <= #length[main_~x~1#1.base] && 0 <= main_~x~1#1.offset); {16761#false} is VALID [2022-02-20 23:46:25,242 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:25,242 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:25,242 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1613073278] [2022-02-20 23:46:25,243 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1613073278] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:25,243 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1598570356] [2022-02-20 23:46:25,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:25,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:25,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:25,244 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:46:25,245 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:46:25,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:25,363 INFO L263 TraceCheckSpWp]: Trace formula consists of 286 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:46:25,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:25,369 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:25,496 INFO L290 TraceCheckUtils]: 0: Hoare triple {16760#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(12, 2); {16760#true} is VALID [2022-02-20 23:46:25,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {16760#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {16760#true} is VALID [2022-02-20 23:46:25,496 INFO L290 TraceCheckUtils]: 2: Hoare triple {16760#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16760#true} is VALID [2022-02-20 23:46:25,497 INFO L290 TraceCheckUtils]: 3: Hoare triple {16760#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,497 INFO L290 TraceCheckUtils]: 4: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,497 INFO L290 TraceCheckUtils]: 5: Hoare triple {16782#(<= 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: L539-2 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,498 INFO L290 TraceCheckUtils]: 6: Hoare triple {16782#(<= 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: L541 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,498 INFO L290 TraceCheckUtils]: 7: Hoare triple {16782#(<= 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: L542 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,498 INFO L290 TraceCheckUtils]: 8: Hoare triple {16782#(<= 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: L543 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,498 INFO L290 TraceCheckUtils]: 9: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,498 INFO L290 TraceCheckUtils]: 10: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,499 INFO L290 TraceCheckUtils]: 11: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,500 INFO L290 TraceCheckUtils]: 15: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,500 INFO L290 TraceCheckUtils]: 16: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,500 INFO L290 TraceCheckUtils]: 17: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {16782#(<= 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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,501 INFO L290 TraceCheckUtils]: 19: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,501 INFO L290 TraceCheckUtils]: 20: Hoare triple {16782#(<= 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: L553 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,501 INFO L290 TraceCheckUtils]: 21: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,501 INFO L290 TraceCheckUtils]: 22: Hoare triple {16782#(<= 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: L554 {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,501 INFO L290 TraceCheckUtils]: 23: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,502 INFO L290 TraceCheckUtils]: 24: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,502 INFO L290 TraceCheckUtils]: 25: Hoare triple {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {16782#(<= 0 |ULTIMATE.start_main_~x~0#1.offset|)} is VALID [2022-02-20 23:46:25,502 INFO L290 TraceCheckUtils]: 26: Hoare triple {16782#(<= 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; {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:46:25,503 INFO L290 TraceCheckUtils]: 27: Hoare triple {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:46:25,503 INFO L290 TraceCheckUtils]: 28: Hoare triple {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:46:25,503 INFO L290 TraceCheckUtils]: 29: Hoare triple {16852#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {16862#(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:46:25,504 INFO L290 TraceCheckUtils]: 30: Hoare triple {16862#(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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {16866#(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:46:25,504 INFO L290 TraceCheckUtils]: 31: Hoare triple {16866#(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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {16866#(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:46:25,504 INFO L290 TraceCheckUtils]: 32: Hoare triple {16866#(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); {16761#false} is VALID [2022-02-20 23:46:25,504 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:46:25,505 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:46:25,505 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1598570356] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:25,505 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:46:25,505 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 13 [2022-02-20 23:46:25,505 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [51349536] [2022-02-20 23:46:25,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:25,506 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 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:46:25,506 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:25,506 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,520 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:25,520 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:46:25,521 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:25,521 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:46:25,521 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=144, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:46:25,521 INFO L87 Difference]: Start difference. First operand 164 states and 195 transitions. Second operand has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:25,713 INFO L93 Difference]: Finished difference Result 178 states and 201 transitions. [2022-02-20 23:46:25,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:46:25,713 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 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:46:25,713 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:25,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 90 transitions. [2022-02-20 23:46:25,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 90 transitions. [2022-02-20 23:46:25,714 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 90 transitions. [2022-02-20 23:46:25,753 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:25,754 INFO L225 Difference]: With dead ends: 178 [2022-02-20 23:46:25,754 INFO L226 Difference]: Without dead ends: 178 [2022-02-20 23:46:25,755 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=69, Invalid=273, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:46:25,755 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 116 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 115 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 105 SdHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 115 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:25,757 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [116 Valid, 105 Invalid, 119 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 115 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:46:25,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 178 states. [2022-02-20 23:46:25,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 178 to 164. [2022-02-20 23:46:25,759 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:25,759 INFO L82 GeneralOperation]: Start isEquivalent. First operand 178 states. Second operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,759 INFO L74 IsIncluded]: Start isIncluded. First operand 178 states. Second operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,760 INFO L87 Difference]: Start difference. First operand 178 states. Second operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:25,761 INFO L93 Difference]: Finished difference Result 178 states and 201 transitions. [2022-02-20 23:46:25,761 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 201 transitions. [2022-02-20 23:46:25,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:25,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:25,762 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 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 178 states. [2022-02-20 23:46:25,762 INFO L87 Difference]: Start difference. First operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 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 178 states. [2022-02-20 23:46:25,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:25,763 INFO L93 Difference]: Finished difference Result 178 states and 201 transitions. [2022-02-20 23:46:25,763 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 201 transitions. [2022-02-20 23:46:25,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:25,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:25,764 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:25,764 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:25,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 152 states have (on average 1.2763157894736843) internal successors, (194), 163 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 194 transitions. [2022-02-20 23:46:25,765 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 194 transitions. Word has length 33 [2022-02-20 23:46:25,765 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:25,766 INFO L470 AbstractCegarLoop]: Abstraction has 164 states and 194 transitions. [2022-02-20 23:46:25,766 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 6.4) internal successors, (32), 6 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:25,766 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 194 transitions. [2022-02-20 23:46:25,766 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:46:25,766 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:25,766 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:25,785 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:46:25,985 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,SelfDestructingSolverStorable25 [2022-02-20 23:46:25,985 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr37ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:25,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:25,986 INFO L85 PathProgramCache]: Analyzing trace with hash 1302827474, now seen corresponding path program 1 times [2022-02-20 23:46:25,986 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:25,986 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1471764585] [2022-02-20 23:46:25,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:25,986 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:26,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:26,033 INFO L290 TraceCheckUtils]: 0: Hoare triple {17581#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(12, 2); {17581#true} is VALID [2022-02-20 23:46:26,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {17581#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {17581#true} is VALID [2022-02-20 23:46:26,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {17581#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {17581#true} is VALID [2022-02-20 23:46:26,034 INFO L290 TraceCheckUtils]: 3: Hoare triple {17581#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,034 INFO L290 TraceCheckUtils]: 4: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {17583#(= |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: L539-2 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,034 INFO L290 TraceCheckUtils]: 6: Hoare triple {17583#(= |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: L541 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {17583#(= |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: L542 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,035 INFO L290 TraceCheckUtils]: 8: Hoare triple {17583#(= |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: L543 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,035 INFO L290 TraceCheckUtils]: 9: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,035 INFO L290 TraceCheckUtils]: 10: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,036 INFO L290 TraceCheckUtils]: 11: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,036 INFO L290 TraceCheckUtils]: 14: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,037 INFO L290 TraceCheckUtils]: 17: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {17583#(= |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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,038 INFO L290 TraceCheckUtils]: 19: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {17583#(= |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: L553 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,038 INFO L290 TraceCheckUtils]: 21: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,039 INFO L290 TraceCheckUtils]: 22: Hoare triple {17583#(= |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: L554 {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {17583#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,040 INFO L290 TraceCheckUtils]: 26: Hoare triple {17583#(= |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; {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,040 INFO L290 TraceCheckUtils]: 27: Hoare triple {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:46:26,041 INFO L290 TraceCheckUtils]: 29: Hoare triple {17584#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,041 INFO L290 TraceCheckUtils]: 30: Hoare triple {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,041 INFO L290 TraceCheckUtils]: 31: Hoare triple {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,041 INFO L290 TraceCheckUtils]: 32: Hoare triple {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,042 INFO L290 TraceCheckUtils]: 33: Hoare triple {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,042 INFO L290 TraceCheckUtils]: 34: Hoare triple {17585#(= |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); {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} is VALID [2022-02-20 23:46:26,042 INFO L290 TraceCheckUtils]: 35: Hoare triple {17585#(= |ULTIMATE.start_main_~x~1#1.offset| 0)} assume !(0 == main_~x~1#1.offset); {17582#false} is VALID [2022-02-20 23:46:26,042 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:46:26,043 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:26,043 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1471764585] [2022-02-20 23:46:26,043 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1471764585] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:26,043 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:26,043 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:46:26,043 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [745268395] [2022-02-20 23:46:26,043 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:26,043 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 8.75) 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 36 [2022-02-20 23:46:26,044 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:26,044 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 8.75) 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:46:26,063 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:46:26,063 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:46:26,063 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:26,063 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:46:26,063 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:26,063 INFO L87 Difference]: Start difference. First operand 164 states and 194 transitions. Second operand has 5 states, 4 states have (on average 8.75) 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:46:26,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,214 INFO L93 Difference]: Finished difference Result 170 states and 192 transitions. [2022-02-20 23:46:26,214 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:46:26,214 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 8.75) 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 36 [2022-02-20 23:46:26,214 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:26,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 8.75) 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:46:26,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 82 transitions. [2022-02-20 23:46:26,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 8.75) 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:46:26,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 82 transitions. [2022-02-20 23:46:26,215 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 82 transitions. [2022-02-20 23:46:26,268 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:26,270 INFO L225 Difference]: With dead ends: 170 [2022-02-20 23:46:26,270 INFO L226 Difference]: Without dead ends: 170 [2022-02-20 23:46:26,270 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:46:26,270 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 104 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:26,270 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [104 Valid, 97 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:26,270 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 170 states. [2022-02-20 23:46:26,272 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 170 to 135. [2022-02-20 23:46:26,272 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:26,272 INFO L82 GeneralOperation]: Start isEquivalent. First operand 170 states. Second operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,272 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,272 INFO L87 Difference]: Start difference. First operand 170 states. Second operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,274 INFO L93 Difference]: Finished difference Result 170 states and 192 transitions. [2022-02-20 23:46:26,274 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 192 transitions. [2022-02-20 23:46:26,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:26,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:26,274 INFO L74 IsIncluded]: Start isIncluded. First operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 170 states. [2022-02-20 23:46:26,276 INFO L87 Difference]: Start difference. First operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 170 states. [2022-02-20 23:46:26,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,278 INFO L93 Difference]: Finished difference Result 170 states and 192 transitions. [2022-02-20 23:46:26,278 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 192 transitions. [2022-02-20 23:46:26,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:26,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:26,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:26,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:26,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 135 states, 123 states have (on average 1.2520325203252032) internal successors, (154), 134 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 135 states to 135 states and 154 transitions. [2022-02-20 23:46:26,280 INFO L78 Accepts]: Start accepts. Automaton has 135 states and 154 transitions. Word has length 36 [2022-02-20 23:46:26,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:26,280 INFO L470 AbstractCegarLoop]: Abstraction has 135 states and 154 transitions. [2022-02-20 23:46:26,280 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 8.75) 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:46:26,280 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 154 transitions. [2022-02-20 23:46:26,280 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:46:26,280 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:26,281 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:26,281 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable26 [2022-02-20 23:46:26,281 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:26,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:26,282 INFO L85 PathProgramCache]: Analyzing trace with hash 1302827524, now seen corresponding path program 1 times [2022-02-20 23:46:26,282 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:26,282 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [646763582] [2022-02-20 23:46:26,282 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:26,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:26,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:26,354 INFO L290 TraceCheckUtils]: 0: Hoare triple {18240#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(12, 2); {18240#true} is VALID [2022-02-20 23:46:26,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {18240#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {18240#true} is VALID [2022-02-20 23:46:26,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {18240#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {18240#true} is VALID [2022-02-20 23:46:26,354 INFO L290 TraceCheckUtils]: 3: Hoare triple {18240#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 4: Hoare triple {18240#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 5: Hoare triple {18240#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 6: Hoare triple {18240#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 7: Hoare triple {18240#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: L542 {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {18240#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: L543 {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {18240#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 10: Hoare triple {18240#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18240#true} is VALID [2022-02-20 23:46:26,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {18240#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {18240#true} is VALID [2022-02-20 23:46:26,356 INFO L290 TraceCheckUtils]: 12: Hoare triple {18240#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {18240#true} is VALID [2022-02-20 23:46:26,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {18240#true} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {18240#true} is VALID [2022-02-20 23:46:26,356 INFO L290 TraceCheckUtils]: 14: Hoare triple {18240#true} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {18240#true} is VALID [2022-02-20 23:46:26,356 INFO L290 TraceCheckUtils]: 15: Hoare triple {18240#true} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,357 INFO L290 TraceCheckUtils]: 18: Hoare triple {18242#(= (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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,357 INFO L290 TraceCheckUtils]: 19: Hoare triple {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,357 INFO L290 TraceCheckUtils]: 20: Hoare triple {18242#(= (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: L553 {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,358 INFO L290 TraceCheckUtils]: 21: Hoare triple {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {18242#(= (select |#valid| |ULTIMATE.start_main_~y~0#1.base|) 1)} is VALID [2022-02-20 23:46:26,358 INFO L290 TraceCheckUtils]: 22: Hoare triple {18242#(= (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: L554 {18243#(= (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:46:26,359 INFO L290 TraceCheckUtils]: 23: Hoare triple {18243#(= (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; {18243#(= (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:46:26,359 INFO L290 TraceCheckUtils]: 24: Hoare triple {18243#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {18243#(= (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:46:26,359 INFO L290 TraceCheckUtils]: 25: Hoare triple {18243#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 1)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {18243#(= (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:46:26,360 INFO L290 TraceCheckUtils]: 26: Hoare triple {18243#(= (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; {18244#(= (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:46:26,360 INFO L290 TraceCheckUtils]: 27: Hoare triple {18244#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {18244#(= (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:46:26,360 INFO L290 TraceCheckUtils]: 28: Hoare triple {18244#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {18244#(= (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:46:26,361 INFO L290 TraceCheckUtils]: 29: Hoare triple {18244#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 1)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:26,361 INFO L290 TraceCheckUtils]: 30: Hoare triple {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:26,361 INFO L290 TraceCheckUtils]: 31: Hoare triple {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:26,362 INFO L290 TraceCheckUtils]: 32: Hoare triple {18245#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {18246#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:46:26,362 INFO L290 TraceCheckUtils]: 33: Hoare triple {18246#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {18247#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:26,362 INFO L290 TraceCheckUtils]: 34: Hoare triple {18247#(= (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; {18247#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:26,363 INFO L290 TraceCheckUtils]: 35: Hoare triple {18247#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {18241#false} is VALID [2022-02-20 23:46:26,363 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:26,363 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:26,363 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [646763582] [2022-02-20 23:46:26,363 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [646763582] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:26,363 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:26,363 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:46:26,363 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [740185004] [2022-02-20 23:46:26,364 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:26,364 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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 36 [2022-02-20 23:46:26,364 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:26,364 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:26,385 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:46:26,385 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:46:26,385 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:26,385 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:46:26,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:46:26,386 INFO L87 Difference]: Start difference. First operand 135 states and 154 transitions. Second operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:26,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,823 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:46:26,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:46:26,823 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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 36 [2022-02-20 23:46:26,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:26,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:26,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 109 transitions. [2022-02-20 23:46:26,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:26,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 109 transitions. [2022-02-20 23:46:26,825 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 109 transitions. [2022-02-20 23:46:26,875 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:26,877 INFO L225 Difference]: With dead ends: 176 [2022-02-20 23:46:26,877 INFO L226 Difference]: Without dead ends: 176 [2022-02-20 23:46:26,877 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:46:26,877 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 72 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 255 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 267 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 255 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:26,878 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 167 Invalid, 267 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 255 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:46:26,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 176 states. [2022-02-20 23:46:26,879 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 176 to 148. [2022-02-20 23:46:26,879 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:26,880 INFO L82 GeneralOperation]: Start isEquivalent. First operand 176 states. Second operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,880 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,880 INFO L87 Difference]: Start difference. First operand 176 states. Second operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,882 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:46:26,882 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 197 transitions. [2022-02-20 23:46:26,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:26,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:26,882 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 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 176 states. [2022-02-20 23:46:26,882 INFO L87 Difference]: Start difference. First operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 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 176 states. [2022-02-20 23:46:26,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:26,884 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:46:26,884 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 197 transitions. [2022-02-20 23:46:26,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:26,884 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:26,884 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:26,884 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:26,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 136 states have (on average 1.2647058823529411) internal successors, (172), 147 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:26,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 172 transitions. [2022-02-20 23:46:26,886 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 172 transitions. Word has length 36 [2022-02-20 23:46:26,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:26,886 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 172 transitions. [2022-02-20 23:46:26,886 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:26,886 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 172 transitions. [2022-02-20 23:46:26,886 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:46:26,887 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:26,887 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:26,887 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable27 [2022-02-20 23:46:26,887 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr33REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:26,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:26,887 INFO L85 PathProgramCache]: Analyzing trace with hash 1302827525, now seen corresponding path program 1 times [2022-02-20 23:46:26,887 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:26,888 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1016393448] [2022-02-20 23:46:26,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:26,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:26,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:26,994 INFO L290 TraceCheckUtils]: 0: Hoare triple {18942#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(12, 2); {18942#true} is VALID [2022-02-20 23:46:26,994 INFO L290 TraceCheckUtils]: 1: Hoare triple {18942#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 2: Hoare triple {18942#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 3: Hoare triple {18942#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 4: Hoare triple {18942#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 5: Hoare triple {18942#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 6: Hoare triple {18942#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 7: Hoare triple {18942#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: L542 {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {18942#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: L543 {18942#true} is VALID [2022-02-20 23:46:26,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {18942#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {18942#true} is VALID [2022-02-20 23:46:26,996 INFO L290 TraceCheckUtils]: 10: Hoare triple {18942#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {18942#true} is VALID [2022-02-20 23:46:26,996 INFO L290 TraceCheckUtils]: 11: Hoare triple {18942#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {18942#true} is VALID [2022-02-20 23:46:26,996 INFO L290 TraceCheckUtils]: 12: Hoare triple {18942#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,997 INFO L290 TraceCheckUtils]: 13: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,997 INFO L290 TraceCheckUtils]: 14: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,997 INFO L290 TraceCheckUtils]: 15: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,998 INFO L290 TraceCheckUtils]: 16: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,998 INFO L290 TraceCheckUtils]: 17: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,999 INFO L290 TraceCheckUtils]: 18: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:26,999 INFO L290 TraceCheckUtils]: 19: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:27,000 INFO L290 TraceCheckUtils]: 20: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~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: L553 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:27,000 INFO L290 TraceCheckUtils]: 21: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.offset| 0))} is VALID [2022-02-20 23:46:27,001 INFO L290 TraceCheckUtils]: 22: Hoare triple {18944#(and (= 12 (select |#length| |ULTIMATE.start_main_~y~0#1.base|)) (= |ULTIMATE.start_main_~y~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: L554 {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:27,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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; {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:27,002 INFO L290 TraceCheckUtils]: 24: Hoare triple {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:27,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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:46:27,002 INFO L290 TraceCheckUtils]: 26: Hoare triple {18945#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 12) (= (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; {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,003 INFO L290 TraceCheckUtils]: 27: Hoare triple {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,003 INFO L290 TraceCheckUtils]: 28: Hoare triple {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,004 INFO L290 TraceCheckUtils]: 29: Hoare triple {18946#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,004 INFO L290 TraceCheckUtils]: 30: Hoare triple {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,004 INFO L290 TraceCheckUtils]: 31: Hoare triple {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} is VALID [2022-02-20 23:46:27,005 INFO L290 TraceCheckUtils]: 32: Hoare triple {18947#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 12))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {18948#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} is VALID [2022-02-20 23:46:27,005 INFO L290 TraceCheckUtils]: 33: Hoare triple {18948#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {18949#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_~y~1#1.base|) (- 12)) 0))} is VALID [2022-02-20 23:46:27,006 INFO L290 TraceCheckUtils]: 34: Hoare triple {18949#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_~y~1#1.base|) (- 12)) 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; {18949#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_~y~1#1.base|) (- 12)) 0))} is VALID [2022-02-20 23:46:27,006 INFO L290 TraceCheckUtils]: 35: Hoare triple {18949#(and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_~y~1#1.base|) (- 12)) 0))} assume !(4 + main_~y~1#1.offset <= #length[main_~y~1#1.base] && 0 <= main_~y~1#1.offset); {18943#false} is VALID [2022-02-20 23:46:27,006 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:27,006 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:27,006 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1016393448] [2022-02-20 23:46:27,007 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1016393448] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:27,007 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:27,007 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:46:27,007 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [419126109] [2022-02-20 23:46:27,007 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:27,007 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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 36 [2022-02-20 23:46:27,007 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:27,008 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:27,030 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:46:27,030 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:46:27,030 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:27,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:46:27,032 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:46:27,032 INFO L87 Difference]: Start difference. First operand 148 states and 172 transitions. Second operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:27,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:27,582 INFO L93 Difference]: Finished difference Result 222 states and 250 transitions. [2022-02-20 23:46:27,582 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:46:27,582 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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 36 [2022-02-20 23:46:27,582 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:27,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:27,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 146 transitions. [2022-02-20 23:46:27,583 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:27,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 146 transitions. [2022-02-20 23:46:27,584 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 146 transitions. [2022-02-20 23:46:27,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:27,682 INFO L225 Difference]: With dead ends: 222 [2022-02-20 23:46:27,682 INFO L226 Difference]: Without dead ends: 222 [2022-02-20 23:46:27,682 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:46:27,682 INFO L933 BasicCegarLoop]: 47 mSDtfsCounter, 128 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 292 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 128 SdHoareTripleChecker+Valid, 249 SdHoareTripleChecker+Invalid, 295 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 292 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:27,682 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [128 Valid, 249 Invalid, 295 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 292 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:46:27,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-02-20 23:46:27,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 148. [2022-02-20 23:46:27,684 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:27,684 INFO L82 GeneralOperation]: Start isEquivalent. First operand 222 states. Second operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:27,684 INFO L74 IsIncluded]: Start isIncluded. First operand 222 states. Second operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:27,685 INFO L87 Difference]: Start difference. First operand 222 states. Second operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:27,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:27,687 INFO L93 Difference]: Finished difference Result 222 states and 250 transitions. [2022-02-20 23:46:27,687 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 250 transitions. [2022-02-20 23:46:27,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:27,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:27,687 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 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 222 states. [2022-02-20 23:46:27,687 INFO L87 Difference]: Start difference. First operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 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 222 states. [2022-02-20 23:46:27,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:27,690 INFO L93 Difference]: Finished difference Result 222 states and 250 transitions. [2022-02-20 23:46:27,690 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 250 transitions. [2022-02-20 23:46:27,690 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:27,690 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:27,690 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:27,690 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:27,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 136 states have (on average 1.2573529411764706) internal successors, (171), 147 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:27,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 171 transitions. [2022-02-20 23:46:27,691 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 171 transitions. Word has length 36 [2022-02-20 23:46:27,692 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:27,692 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 171 transitions. [2022-02-20 23:46:27,692 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 5.142857142857143) internal successors, (36), 8 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:46:27,692 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 171 transitions. [2022-02-20 23:46:27,692 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 23:46:27,692 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:27,692 INFO L514 BasicCegarLoop]: trace histogram [3, 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:46:27,692 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable28 [2022-02-20 23:46:27,693 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:27,693 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:27,693 INFO L85 PathProgramCache]: Analyzing trace with hash 904979977, now seen corresponding path program 1 times [2022-02-20 23:46:27,693 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:27,693 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [356598528] [2022-02-20 23:46:27,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:27,693 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:27,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:27,923 INFO L290 TraceCheckUtils]: 0: Hoare triple {19781#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(12, 2); {19781#true} is VALID [2022-02-20 23:46:27,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {19781#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {19781#true} is VALID [2022-02-20 23:46:27,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {19781#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19781#true} is VALID [2022-02-20 23:46:27,923 INFO L290 TraceCheckUtils]: 3: Hoare triple {19781#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {19783#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:27,924 INFO L290 TraceCheckUtils]: 4: Hoare triple {19783#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {19783#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:27,924 INFO L290 TraceCheckUtils]: 5: Hoare triple {19783#(= |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: L539-2 {19784#(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:46:27,925 INFO L290 TraceCheckUtils]: 6: Hoare triple {19784#(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: L541 {19784#(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:46:27,925 INFO L290 TraceCheckUtils]: 7: Hoare triple {19784#(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: L542 {19785#(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:46:27,926 INFO L290 TraceCheckUtils]: 8: Hoare triple {19785#(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: L543 {19785#(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:46:27,927 INFO L290 TraceCheckUtils]: 9: Hoare triple {19785#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19785#(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:46:27,927 INFO L290 TraceCheckUtils]: 10: Hoare triple {19785#(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; {19785#(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:46:27,928 INFO L290 TraceCheckUtils]: 11: Hoare triple {19785#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19785#(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:46:27,928 INFO L290 TraceCheckUtils]: 12: Hoare triple {19785#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19785#(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:46:27,929 INFO L290 TraceCheckUtils]: 13: Hoare triple {19785#(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; {19786#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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:46:27,929 INFO L290 TraceCheckUtils]: 14: Hoare triple {19786#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19786#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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:46:27,930 INFO L290 TraceCheckUtils]: 15: Hoare triple {19786#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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 !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,930 INFO L290 TraceCheckUtils]: 16: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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); {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,931 INFO L290 TraceCheckUtils]: 17: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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: L539-2 {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,932 INFO L290 TraceCheckUtils]: 18: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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: L541 {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,933 INFO L290 TraceCheckUtils]: 19: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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: L542 {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,933 INFO L290 TraceCheckUtils]: 20: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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: L543 {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,934 INFO L290 TraceCheckUtils]: 21: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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; {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,936 INFO L290 TraceCheckUtils]: 24: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,936 INFO L290 TraceCheckUtils]: 25: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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); {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (not (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,937 INFO L290 TraceCheckUtils]: 26: Hoare triple {19787#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) (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: L562 {19788#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:27,938 INFO L290 TraceCheckUtils]: 27: Hoare triple {19788#(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|) (= |ULTIMATE.start_main_~first~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} 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: L562-1 {19789#(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:46:27,938 INFO L290 TraceCheckUtils]: 28: Hoare triple {19789#(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_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {19789#(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:46:27,939 INFO L290 TraceCheckUtils]: 29: Hoare triple {19789#(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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19789#(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:46:27,939 INFO L290 TraceCheckUtils]: 30: Hoare triple {19789#(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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {19789#(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:46:27,940 INFO L290 TraceCheckUtils]: 31: Hoare triple {19789#(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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {19790#(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:46:27,940 INFO L290 TraceCheckUtils]: 32: Hoare triple {19790#(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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {19790#(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:46:27,940 INFO L290 TraceCheckUtils]: 33: Hoare triple {19790#(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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {19790#(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:46:27,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {19790#(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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {19791#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| |ULTIMATE.start_main_~x~1#1.offset|) (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:27,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {19791#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| |ULTIMATE.start_main_~x~1#1.offset|) (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {19792#(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:46:27,942 INFO L290 TraceCheckUtils]: 36: Hoare triple {19792#(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; {19782#false} is VALID [2022-02-20 23:46:27,942 INFO L290 TraceCheckUtils]: 37: Hoare triple {19782#false} assume !(1 == #valid[main_~y~1#1.base]); {19782#false} is VALID [2022-02-20 23:46:27,942 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:27,942 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:27,942 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [356598528] [2022-02-20 23:46:27,942 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [356598528] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:27,942 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1539453775] [2022-02-20 23:46:27,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:27,942 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:27,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:27,956 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:46:27,976 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:46:28,134 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:28,135 INFO L263 TraceCheckSpWp]: Trace formula consists of 326 conjuncts, 41 conjunts are in the unsatisfiable core [2022-02-20 23:46:28,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:28,147 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:28,164 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:46:28,207 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:46:28,244 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:28,246 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:46:28,264 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:28,265 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:46:28,341 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:28,341 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:46:28,402 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:46:28,422 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:46:28,440 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:46:28,457 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:46:28,477 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:46:28,579 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:28,580 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 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:46:28,620 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:46:28,710 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:46:28,738 INFO L290 TraceCheckUtils]: 0: Hoare triple {19781#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(12, 2); {19781#true} is VALID [2022-02-20 23:46:28,738 INFO L290 TraceCheckUtils]: 1: Hoare triple {19781#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {19781#true} is VALID [2022-02-20 23:46:28,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {19781#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19781#true} is VALID [2022-02-20 23:46:28,739 INFO L290 TraceCheckUtils]: 3: Hoare triple {19781#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {19784#(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:46:28,739 INFO L290 TraceCheckUtils]: 4: Hoare triple {19784#(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); {19784#(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:46:28,740 INFO L290 TraceCheckUtils]: 5: Hoare triple {19784#(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: L539-2 {19784#(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:46:28,740 INFO L290 TraceCheckUtils]: 6: Hoare triple {19784#(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: L541 {19784#(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:46:28,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {19784#(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: L542 {19817#(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:46:28,741 INFO L290 TraceCheckUtils]: 8: Hoare triple {19817#(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: L543 {19817#(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:46:28,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {19817#(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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19817#(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:46:28,743 INFO L290 TraceCheckUtils]: 10: Hoare triple {19817#(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; {19817#(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:46:28,743 INFO L290 TraceCheckUtils]: 11: Hoare triple {19817#(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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19817#(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:46:28,743 INFO L290 TraceCheckUtils]: 12: Hoare triple {19817#(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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19817#(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:46:28,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {19817#(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; {19836#(and (= |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) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,744 INFO L290 TraceCheckUtils]: 14: Hoare triple {19836#(and (= |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) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19836#(and (= |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) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,745 INFO L290 TraceCheckUtils]: 15: Hoare triple {19836#(and (= |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) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,746 INFO L290 TraceCheckUtils]: 16: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,747 INFO L290 TraceCheckUtils]: 17: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |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: L539-2 {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,747 INFO L290 TraceCheckUtils]: 18: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |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: L541 {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |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: L542 {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,749 INFO L290 TraceCheckUtils]: 20: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |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: L543 {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,750 INFO L290 TraceCheckUtils]: 21: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,750 INFO L290 TraceCheckUtils]: 22: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,750 INFO L290 TraceCheckUtils]: 23: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,751 INFO L290 TraceCheckUtils]: 24: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,751 INFO L290 TraceCheckUtils]: 25: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {19843#(and (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_~last~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) 0)) (<= 0 |ULTIMATE.start_main_~last~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} 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: L562 {19877#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:28,753 INFO L290 TraceCheckUtils]: 27: Hoare triple {19877#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} 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: L562-1 {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (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:46:28,753 INFO L290 TraceCheckUtils]: 28: Hoare triple {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 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; {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (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:46:28,754 INFO L290 TraceCheckUtils]: 29: Hoare triple {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (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:46:28,754 INFO L290 TraceCheckUtils]: 30: Hoare triple {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (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:46:28,755 INFO L290 TraceCheckUtils]: 31: Hoare triple {19881#(and (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {19894#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:28,755 INFO L290 TraceCheckUtils]: 32: Hoare triple {19894#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {19898#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (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:46:28,755 INFO L290 TraceCheckUtils]: 33: Hoare triple {19898#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {19898#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (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:46:28,756 INFO L290 TraceCheckUtils]: 34: Hoare triple {19898#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {19905#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:46:28,756 INFO L290 TraceCheckUtils]: 35: Hoare triple {19905#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:28,757 INFO L290 TraceCheckUtils]: 36: Hoare triple {19909#(= (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; {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:28,757 INFO L290 TraceCheckUtils]: 37: Hoare triple {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {19782#false} is VALID [2022-02-20 23:46:28,757 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:28,757 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:28,790 INFO L356 Elim1Store]: treesize reduction 5, result has 58.3 percent of original size [2022-02-20 23:46:28,790 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 16 treesize of output 15 [2022-02-20 23:46:28,839 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_1787 (Array Int Int))) (= (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|) |c_ULTIMATE.start_main_~first~0#1.base|)) is different from false [2022-02-20 23:46:28,855 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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|) (+ |c_ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|) |c_ULTIMATE.start_main_~first~0#1.base|)) is different from false [2022-02-20 23:46:28,934 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= (select (select (store (let ((.cse0 (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784))) (store .cse0 |c_ULTIMATE.start_main_~last~0#1.base| (store (select .cse0 |c_ULTIMATE.start_main_~last~0#1.base|) (+ |c_ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786))) |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |c_ULTIMATE.start_main_~first~0#1.base|) |c_ULTIMATE.start_main_~first~0#1.offset|) |c_ULTIMATE.start_main_~first~0#1.base|)) is different from false [2022-02-20 23:46:30,295 WARN L838 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (not (= (select |c_#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (let ((.cse0 (store (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| (store (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base|) (+ |c_ULTIMATE.start_main_~x~0#1.offset| 8) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784))) (store .cse0 |c_ULTIMATE.start_main_~x~0#1.base| (store (select .cse0 |c_ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786))) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |c_ULTIMATE.start_main_~x~0#1.base|) |c_ULTIMATE.start_main_~x~0#1.offset|) |c_ULTIMATE.start_main_~x~0#1.base|) (not (<= |c_ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)))) is different from false [2022-02-20 23:46:30,528 WARN L838 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1776 Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (not (= (select |c_#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (let ((.cse0 (store (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| (store (store (select |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base|) (+ |c_ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_1776) (+ |c_ULTIMATE.start_main_~x~0#1.offset| 8) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784))) (store .cse0 |c_ULTIMATE.start_main_~x~0#1.base| (store (select .cse0 |c_ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786))) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |c_ULTIMATE.start_main_~x~0#1.base|) |c_ULTIMATE.start_main_~x~0#1.offset|) |c_ULTIMATE.start_main_~x~0#1.base|) (not (<= |c_ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)))) is different from false [2022-02-20 23:46:30,698 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:30,699 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:30,699 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:30,703 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:30,703 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 3 case distinctions, treesize of input 62 treesize of output 55 [2022-02-20 23:46:30,747 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 70 treesize of output 66 [2022-02-20 23:46:30,764 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:30,770 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 24 treesize of output 22 [2022-02-20 23:46:30,788 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:30,791 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 32 treesize of output 28 [2022-02-20 23:46:30,808 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 5 treesize of output 3 [2022-02-20 23:46:30,847 INFO L290 TraceCheckUtils]: 37: Hoare triple {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {19782#false} is VALID [2022-02-20 23:46:30,848 INFO L290 TraceCheckUtils]: 36: Hoare triple {19909#(= (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; {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:30,848 INFO L290 TraceCheckUtils]: 35: Hoare triple {19905#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {19909#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:30,848 INFO L290 TraceCheckUtils]: 34: Hoare triple {19925#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {19905#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:46:30,849 INFO L290 TraceCheckUtils]: 33: Hoare triple {19925#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {19925#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:30,849 INFO L290 TraceCheckUtils]: 32: Hoare triple {19932#(= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {19925#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 1)} is VALID [2022-02-20 23:46:30,850 INFO L290 TraceCheckUtils]: 31: Hoare triple {19936#(= (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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {19932#(= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:30,850 INFO L290 TraceCheckUtils]: 30: Hoare triple {19936#(= (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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {19936#(= (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:46:30,850 INFO L290 TraceCheckUtils]: 29: Hoare triple {19936#(= (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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19936#(= (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:46:30,850 INFO L290 TraceCheckUtils]: 28: Hoare triple {19936#(= (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; {19936#(= (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:46:30,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {19949#(forall ((v_ArrVal_1787 (Array Int Int))) (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |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: L562-1 {19936#(= (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:46:30,852 INFO L290 TraceCheckUtils]: 26: Hoare triple {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} 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: L562 {19949#(forall ((v_ArrVal_1787 (Array Int Int))) (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,852 INFO L290 TraceCheckUtils]: 25: Hoare triple {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,853 INFO L290 TraceCheckUtils]: 22: Hoare triple {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,854 INFO L290 TraceCheckUtils]: 21: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19953#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1786 Int)) (= (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) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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:46:30,856 WARN L290 TraceCheckUtils]: 20: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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_~x~0#1.base, 4 + main_~x~0#1.offset, 4); srcloc: L543 {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is UNKNOWN [2022-02-20 23:46:30,857 INFO L290 TraceCheckUtils]: 19: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |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_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L542 {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:30,860 WARN L290 TraceCheckUtils]: 18: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |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: L541 {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is UNKNOWN [2022-02-20 23:46:30,863 WARN L290 TraceCheckUtils]: 17: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |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: L539-2 {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is UNKNOWN [2022-02-20 23:46:30,864 WARN L290 TraceCheckUtils]: 16: Hoare triple {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is UNKNOWN [2022-02-20 23:46:30,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {19988#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {19969#(forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:30,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {19988#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19988#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |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:46:30,867 WARN L290 TraceCheckUtils]: 13: Hoare triple {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |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; {19988#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (forall ((v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (v_ArrVal_1786 Int)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) |ULTIMATE.start_main_~first~0#1.base|))))} is UNKNOWN [2022-02-20 23:46:30,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:30,868 INFO L290 TraceCheckUtils]: 11: Hoare triple {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:30,868 INFO L290 TraceCheckUtils]: 10: Hoare triple {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:30,870 INFO L290 TraceCheckUtils]: 9: Hoare triple {20008#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (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_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |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_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {19995#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (select (select (store (store (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:30,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {20012#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1776 Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_1776) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_1776) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 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: L543 {20008#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0)) (= (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_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |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_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:30,874 INFO L290 TraceCheckUtils]: 7: Hoare triple {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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: L542 {20012#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_40| Int) (v_ArrVal_1787 (Array Int Int)) (v_ArrVal_1784 (Array Int Int)) (|v_ULTIMATE.start_main_~last~0#1.offset_15| Int) (v_ArrVal_1776 Int) (v_ArrVal_1786 Int) (v_ArrVal_1778 Int)) (or (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_1776) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_1776) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_1778)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1784) |ULTIMATE.start_main_~x~0#1.base|) (+ |v_ULTIMATE.start_main_~last~0#1.offset_15| 12) v_ArrVal_1786)) |v_ULTIMATE.start_main_~x~0#1.base_40| v_ArrVal_1787) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|) (not (<= |ULTIMATE.start_main_~x~0#1.offset| |v_ULTIMATE.start_main_~last~0#1.offset_15|)) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:30,874 INFO L290 TraceCheckUtils]: 6: Hoare triple {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:30,874 INFO L290 TraceCheckUtils]: 5: Hoare triple {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:30,875 INFO L290 TraceCheckUtils]: 4: Hoare triple {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:30,875 INFO L290 TraceCheckUtils]: 3: Hoare triple {19781#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {20016#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:30,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {19781#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {19781#true} is VALID [2022-02-20 23:46:30,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {19781#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {19781#true} is VALID [2022-02-20 23:46:30,875 INFO L290 TraceCheckUtils]: 0: Hoare triple {19781#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(12, 2); {19781#true} is VALID [2022-02-20 23:46:30,876 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 10 not checked. [2022-02-20 23:46:30,876 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1539453775] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:30,876 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:30,876 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11, 14] total 32 [2022-02-20 23:46:30,876 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1226180024] [2022-02-20 23:46:30,876 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:30,876 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:46:30,876 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:30,877 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 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:46:30,944 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 94 inductive. 0 not inductive. 10 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:30,944 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-02-20 23:46:30,944 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:30,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-02-20 23:46:30,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=623, Unknown=7, NotChecked=270, Total=992 [2022-02-20 23:46:30,946 INFO L87 Difference]: Start difference. First operand 148 states and 171 transitions. Second operand has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 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:46:32,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:32,352 INFO L93 Difference]: Finished difference Result 181 states and 207 transitions. [2022-02-20 23:46:32,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:46:32,352 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:46:32,352 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:32,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 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:46:32,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 101 transitions. [2022-02-20 23:46:32,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 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:46:32,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 101 transitions. [2022-02-20 23:46:32,355 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 101 transitions. [2022-02-20 23:46:32,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 97 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:32,441 INFO L225 Difference]: With dead ends: 181 [2022-02-20 23:46:32,441 INFO L226 Difference]: Without dead ends: 181 [2022-02-20 23:46:32,441 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 66 SyntacticMatches, 5 SemanticMatches, 44 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 260 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=239, Invalid=1414, Unknown=7, NotChecked=410, Total=2070 [2022-02-20 23:46:32,441 INFO L933 BasicCegarLoop]: 54 mSDtfsCounter, 62 mSDsluCounter, 635 mSDsCounter, 0 mSdLazyCounter, 564 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 689 SdHoareTripleChecker+Invalid, 1000 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 564 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 419 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:32,442 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [62 Valid, 689 Invalid, 1000 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 564 Invalid, 0 Unknown, 419 Unchecked, 0.3s Time] [2022-02-20 23:46:32,442 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 181 states. [2022-02-20 23:46:32,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 181 to 169. [2022-02-20 23:46:32,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:32,443 INFO L82 GeneralOperation]: Start isEquivalent. First operand 181 states. Second operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:32,443 INFO L74 IsIncluded]: Start isIncluded. First operand 181 states. Second operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:32,444 INFO L87 Difference]: Start difference. First operand 181 states. Second operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:32,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:32,445 INFO L93 Difference]: Finished difference Result 181 states and 207 transitions. [2022-02-20 23:46:32,445 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 207 transitions. [2022-02-20 23:46:32,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:32,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:32,445 INFO L74 IsIncluded]: Start isIncluded. First operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 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 181 states. [2022-02-20 23:46:32,449 INFO L87 Difference]: Start difference. First operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 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 181 states. [2022-02-20 23:46:32,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:32,464 INFO L93 Difference]: Finished difference Result 181 states and 207 transitions. [2022-02-20 23:46:32,464 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 207 transitions. [2022-02-20 23:46:32,465 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:32,465 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:32,465 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:32,465 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:32,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 169 states, 157 states have (on average 1.2356687898089171) internal successors, (194), 168 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:32,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 169 states to 169 states and 194 transitions. [2022-02-20 23:46:32,467 INFO L78 Accepts]: Start accepts. Automaton has 169 states and 194 transitions. Word has length 38 [2022-02-20 23:46:32,467 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:32,467 INFO L470 AbstractCegarLoop]: Abstraction has 169 states and 194 transitions. [2022-02-20 23:46:32,467 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 3.25) internal successors, (104), 32 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:46:32,467 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 194 transitions. [2022-02-20 23:46:32,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 23:46:32,468 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:32,468 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:32,484 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:46:32,668 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:32,668 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting ULTIMATE.startErr34ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:32,669 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:32,669 INFO L85 PathProgramCache]: Analyzing trace with hash -2113196924, now seen corresponding path program 1 times [2022-02-20 23:46:32,669 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:32,669 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1089738710] [2022-02-20 23:46:32,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:32,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:32,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 0: Hoare triple {20784#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(12, 2); {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {20784#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {20784#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 3: Hoare triple {20784#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 4: Hoare triple {20784#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {20784#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {20784#true} is VALID [2022-02-20 23:46:32,781 INFO L290 TraceCheckUtils]: 6: Hoare triple {20784#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 7: Hoare triple {20784#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: L542 {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {20784#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: L543 {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {20784#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 10: Hoare triple {20784#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {20784#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {20784#true} is VALID [2022-02-20 23:46:32,782 INFO L290 TraceCheckUtils]: 12: Hoare triple {20784#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,783 INFO L290 TraceCheckUtils]: 13: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,783 INFO L290 TraceCheckUtils]: 14: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,785 INFO L290 TraceCheckUtils]: 19: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {20786#(= |ULTIMATE.start_main_~y~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: L553 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {20786#(= |ULTIMATE.start_main_~y~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,786 INFO L290 TraceCheckUtils]: 22: Hoare triple {20786#(= |ULTIMATE.start_main_~y~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: L554 {20787#(= (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:46:32,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {20787#(= (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; {20787#(= (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:46:32,787 INFO L290 TraceCheckUtils]: 24: Hoare triple {20787#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {20787#(= (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:46:32,787 INFO L290 TraceCheckUtils]: 25: Hoare triple {20787#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {20787#(= (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:46:32,787 INFO L290 TraceCheckUtils]: 26: Hoare triple {20787#(= (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; {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} is VALID [2022-02-20 23:46:32,788 INFO L290 TraceCheckUtils]: 27: Hoare triple {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} is VALID [2022-02-20 23:46:32,788 INFO L290 TraceCheckUtils]: 28: Hoare triple {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} is VALID [2022-02-20 23:46:32,789 INFO L290 TraceCheckUtils]: 29: Hoare triple {20788#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} is VALID [2022-02-20 23:46:32,789 INFO L290 TraceCheckUtils]: 30: Hoare triple {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} is VALID [2022-02-20 23:46:32,789 INFO L290 TraceCheckUtils]: 31: Hoare triple {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} is VALID [2022-02-20 23:46:32,798 INFO L290 TraceCheckUtils]: 32: Hoare triple {20789#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {20790#(= |ULTIMATE.start_main_#t~mem10#1.offset| 0)} is VALID [2022-02-20 23:46:32,798 INFO L290 TraceCheckUtils]: 33: Hoare triple {20790#(= |ULTIMATE.start_main_#t~mem10#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {20791#(= |ULTIMATE.start_main_~y~1#1.offset| 0)} is VALID [2022-02-20 23:46:32,799 INFO L290 TraceCheckUtils]: 34: Hoare triple {20791#(= |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; {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,799 INFO L290 TraceCheckUtils]: 35: Hoare triple {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,799 INFO L290 TraceCheckUtils]: 36: Hoare triple {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} is VALID [2022-02-20 23:46:32,800 INFO L290 TraceCheckUtils]: 37: Hoare triple {20792#(= |ULTIMATE.start_main_~z~0#1.offset| 0)} assume !(0 == main_~z~0#1.offset); {20785#false} is VALID [2022-02-20 23:46:32,800 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:32,800 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:32,800 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1089738710] [2022-02-20 23:46:32,800 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1089738710] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:32,800 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:32,800 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:46:32,801 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1872218450] [2022-02-20 23:46:32,801 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:32,801 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:46:32,801 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:32,801 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:32,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:32,843 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:32,843 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:32,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:32,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:32,843 INFO L87 Difference]: Start difference. First operand 169 states and 194 transitions. Second operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:33,640 INFO L93 Difference]: Finished difference Result 286 states and 318 transitions. [2022-02-20 23:46:33,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:46:33,641 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:46:33,641 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:33,641 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 196 transitions. [2022-02-20 23:46:33,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 196 transitions. [2022-02-20 23:46:33,644 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 196 transitions. [2022-02-20 23:46:33,773 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:33,777 INFO L225 Difference]: With dead ends: 286 [2022-02-20 23:46:33,777 INFO L226 Difference]: Without dead ends: 286 [2022-02-20 23:46:33,777 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=104, Invalid=316, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:46:33,778 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 286 mSDsluCounter, 346 mSDsCounter, 0 mSdLazyCounter, 303 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 286 SdHoareTripleChecker+Valid, 417 SdHoareTripleChecker+Invalid, 316 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 303 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:33,778 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [286 Valid, 417 Invalid, 316 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 303 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:46:33,778 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 286 states. [2022-02-20 23:46:33,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 286 to 171. [2022-02-20 23:46:33,796 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:33,796 INFO L82 GeneralOperation]: Start isEquivalent. First operand 286 states. Second operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,796 INFO L74 IsIncluded]: Start isIncluded. First operand 286 states. Second operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,796 INFO L87 Difference]: Start difference. First operand 286 states. Second operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:33,799 INFO L93 Difference]: Finished difference Result 286 states and 318 transitions. [2022-02-20 23:46:33,799 INFO L276 IsEmpty]: Start isEmpty. Operand 286 states and 318 transitions. [2022-02-20 23:46:33,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:33,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:33,800 INFO L74 IsIncluded]: Start isIncluded. First operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 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 286 states. [2022-02-20 23:46:33,800 INFO L87 Difference]: Start difference. First operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 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 286 states. [2022-02-20 23:46:33,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:33,803 INFO L93 Difference]: Finished difference Result 286 states and 318 transitions. [2022-02-20 23:46:33,803 INFO L276 IsEmpty]: Start isEmpty. Operand 286 states and 318 transitions. [2022-02-20 23:46:33,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:33,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:33,804 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:33,804 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:33,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 171 states, 159 states have (on average 1.2327044025157232) internal successors, (196), 170 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 196 transitions. [2022-02-20 23:46:33,819 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 196 transitions. Word has length 38 [2022-02-20 23:46:33,819 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:33,819 INFO L470 AbstractCegarLoop]: Abstraction has 171 states and 196 transitions. [2022-02-20 23:46:33,819 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 4.75) internal successors, (38), 9 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:33,820 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 196 transitions. [2022-02-20 23:46:33,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:46:33,820 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:33,820 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:33,820 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30 [2022-02-20 23:46:33,820 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting ULTIMATE.startErr35ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:33,821 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:33,821 INFO L85 PathProgramCache]: Analyzing trace with hash -1084595048, now seen corresponding path program 1 times [2022-02-20 23:46:33,821 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:33,821 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1382999023] [2022-02-20 23:46:33,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:33,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:33,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:33,962 INFO L290 TraceCheckUtils]: 0: Hoare triple {21850#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(12, 2); {21850#true} is VALID [2022-02-20 23:46:33,962 INFO L290 TraceCheckUtils]: 1: Hoare triple {21850#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {21850#true} is VALID [2022-02-20 23:46:33,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {21850#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {21850#true} is VALID [2022-02-20 23:46:33,962 INFO L290 TraceCheckUtils]: 3: Hoare triple {21850#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 4: Hoare triple {21850#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 5: Hoare triple {21850#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 6: Hoare triple {21850#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 7: Hoare triple {21850#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: L542 {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 8: Hoare triple {21850#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: L543 {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 9: Hoare triple {21850#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 10: Hoare triple {21850#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {21850#true} is VALID [2022-02-20 23:46:33,963 INFO L290 TraceCheckUtils]: 11: Hoare triple {21850#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {21850#true} is VALID [2022-02-20 23:46:33,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {21850#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,965 INFO L290 TraceCheckUtils]: 14: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,965 INFO L290 TraceCheckUtils]: 15: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} 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: L553 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,967 INFO L290 TraceCheckUtils]: 21: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,968 INFO L290 TraceCheckUtils]: 22: Hoare triple {21852#(<= (+ |ULTIMATE.start_main_~y~0#1.base| 1) |#StackHeapBarrier|)} 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: L554 {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,968 INFO L290 TraceCheckUtils]: 23: Hoare triple {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,969 INFO L290 TraceCheckUtils]: 24: Hoare triple {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,969 INFO L290 TraceCheckUtils]: 25: Hoare triple {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,969 INFO L290 TraceCheckUtils]: 26: Hoare triple {21853#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 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; {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,970 INFO L290 TraceCheckUtils]: 27: Hoare triple {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,970 INFO L290 TraceCheckUtils]: 28: Hoare triple {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,971 INFO L290 TraceCheckUtils]: 29: Hoare triple {21854#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 1) |#StackHeapBarrier|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,971 INFO L290 TraceCheckUtils]: 30: Hoare triple {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,971 INFO L290 TraceCheckUtils]: 31: Hoare triple {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,972 INFO L290 TraceCheckUtils]: 32: Hoare triple {21855#(<= (+ (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {21856#(<= (+ |ULTIMATE.start_main_#t~mem10#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,972 INFO L290 TraceCheckUtils]: 33: Hoare triple {21856#(<= (+ |ULTIMATE.start_main_#t~mem10#1.base| 1) |#StackHeapBarrier|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {21857#(<= (+ |ULTIMATE.start_main_~y~1#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,973 INFO L290 TraceCheckUtils]: 34: Hoare triple {21857#(<= (+ |ULTIMATE.start_main_~y~1#1.base| 1) |#StackHeapBarrier|)} 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; {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,973 INFO L290 TraceCheckUtils]: 35: Hoare triple {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,973 INFO L290 TraceCheckUtils]: 36: Hoare triple {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,974 INFO L290 TraceCheckUtils]: 37: Hoare triple {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} assume 0 == main_~z~0#1.offset; {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} is VALID [2022-02-20 23:46:33,974 INFO L290 TraceCheckUtils]: 38: Hoare triple {21858#(<= (+ |ULTIMATE.start_main_~z~0#1.base| 1) |#StackHeapBarrier|)} assume !(main_~z~0#1.base < #StackHeapBarrier); {21851#false} is VALID [2022-02-20 23:46:33,974 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:33,974 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:33,974 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1382999023] [2022-02-20 23:46:33,975 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1382999023] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:33,975 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:33,975 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:46:33,975 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [637360555] [2022-02-20 23:46:33,975 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:33,975 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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 39 [2022-02-20 23:46:33,975 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:33,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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:46:34,022 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:46:34,022 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:46:34,022 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:34,023 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:46:34,023 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:46:34,024 INFO L87 Difference]: Start difference. First operand 171 states and 196 transitions. Second operand has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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:46:34,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:34,807 INFO L93 Difference]: Finished difference Result 283 states and 315 transitions. [2022-02-20 23:46:34,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:46:34,807 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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 39 [2022-02-20 23:46:34,807 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:34,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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:46:34,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 186 transitions. [2022-02-20 23:46:34,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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:46:34,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 186 transitions. [2022-02-20 23:46:34,809 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 186 transitions. [2022-02-20 23:46:34,890 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:46:34,893 INFO L225 Difference]: With dead ends: 283 [2022-02-20 23:46:34,893 INFO L226 Difference]: Without dead ends: 283 [2022-02-20 23:46:34,893 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=73, Invalid=269, Unknown=0, NotChecked=0, Total=342 [2022-02-20 23:46:34,894 INFO L933 BasicCegarLoop]: 55 mSDtfsCounter, 192 mSDsluCounter, 292 mSDsCounter, 0 mSdLazyCounter, 372 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 192 SdHoareTripleChecker+Valid, 347 SdHoareTripleChecker+Invalid, 380 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 372 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:34,894 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [192 Valid, 347 Invalid, 380 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 372 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:46:34,894 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-02-20 23:46:34,896 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 172. [2022-02-20 23:46:34,896 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:34,896 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:34,896 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:34,896 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:34,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:34,901 INFO L93 Difference]: Finished difference Result 283 states and 315 transitions. [2022-02-20 23:46:34,901 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 315 transitions. [2022-02-20 23:46:34,901 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:34,901 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:34,901 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 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:46:34,902 INFO L87 Difference]: Start difference. First operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 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:46:34,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:34,919 INFO L93 Difference]: Finished difference Result 283 states and 315 transitions. [2022-02-20 23:46:34,919 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 315 transitions. [2022-02-20 23:46:34,920 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:34,920 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:34,920 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:34,920 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:34,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 160 states have (on average 1.23125) internal successors, (197), 171 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:34,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 197 transitions. [2022-02-20 23:46:34,922 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 197 transitions. Word has length 39 [2022-02-20 23:46:34,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:34,922 INFO L470 AbstractCegarLoop]: Abstraction has 172 states and 197 transitions. [2022-02-20 23:46:34,922 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 4.875) internal successors, (39), 9 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:46:34,922 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 197 transitions. [2022-02-20 23:46:34,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 23:46:34,923 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:34,923 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:34,923 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31 [2022-02-20 23:46:34,923 INFO L402 AbstractCegarLoop]: === Iteration 33 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:34,923 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:34,923 INFO L85 PathProgramCache]: Analyzing trace with hash 693362007, now seen corresponding path program 1 times [2022-02-20 23:46:34,924 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:34,924 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [353250790] [2022-02-20 23:46:34,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:34,924 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:34,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:34,996 INFO L290 TraceCheckUtils]: 0: Hoare triple {22903#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(12, 2); {22903#true} is VALID [2022-02-20 23:46:34,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {22903#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {22903#true} is VALID [2022-02-20 23:46:34,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {22903#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22903#true} is VALID [2022-02-20 23:46:34,996 INFO L290 TraceCheckUtils]: 3: Hoare triple {22903#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {22903#true} is VALID [2022-02-20 23:46:34,996 INFO L290 TraceCheckUtils]: 4: Hoare triple {22903#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {22903#true} is VALID [2022-02-20 23:46:34,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {22903#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,997 INFO L290 TraceCheckUtils]: 6: Hoare triple {22905#(= (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: L541 {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {22905#(= (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: L542 {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,997 INFO L290 TraceCheckUtils]: 8: Hoare triple {22905#(= (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: L543 {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,998 INFO L290 TraceCheckUtils]: 10: Hoare triple {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,998 INFO L290 TraceCheckUtils]: 11: Hoare triple {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} is VALID [2022-02-20 23:46:34,999 INFO L290 TraceCheckUtils]: 12: Hoare triple {22905#(= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1)} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:34,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:34,999 INFO L290 TraceCheckUtils]: 14: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:34,999 INFO L290 TraceCheckUtils]: 15: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,000 INFO L290 TraceCheckUtils]: 16: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,000 INFO L290 TraceCheckUtils]: 17: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,000 INFO L290 TraceCheckUtils]: 18: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,000 INFO L290 TraceCheckUtils]: 19: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |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: L553 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,001 INFO L290 TraceCheckUtils]: 21: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,001 INFO L290 TraceCheckUtils]: 22: Hoare triple {22906#(not (= |ULTIMATE.start_main_~y~0#1.base| |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: L554 {22907#(not (= |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:46:35,002 INFO L290 TraceCheckUtils]: 23: Hoare triple {22907#(not (= |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; {22907#(not (= |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:46:35,002 INFO L290 TraceCheckUtils]: 24: Hoare triple {22907#(not (= |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {22907#(not (= |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:46:35,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {22907#(not (= |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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {22907#(not (= |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:46:35,003 INFO L290 TraceCheckUtils]: 26: Hoare triple {22907#(not (= |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; {22908#(not (= (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:46:35,003 INFO L290 TraceCheckUtils]: 27: Hoare triple {22908#(not (= (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 -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22908#(not (= (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:46:35,003 INFO L290 TraceCheckUtils]: 28: Hoare triple {22908#(not (= (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 !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {22908#(not (= (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:46:35,003 INFO L290 TraceCheckUtils]: 29: Hoare triple {22908#(not (= (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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {22909#(not (= (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:46:35,004 INFO L290 TraceCheckUtils]: 30: Hoare triple {22909#(not (= (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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {22909#(not (= (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:46:35,004 INFO L290 TraceCheckUtils]: 31: Hoare triple {22909#(not (= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {22909#(not (= (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:46:35,004 INFO L290 TraceCheckUtils]: 32: Hoare triple {22909#(not (= (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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {22910#(not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 33: Hoare triple {22910#(not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {22911#(not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 34: Hoare triple {22911#(not (= |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); {22904#false} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 35: Hoare triple {22904#false} assume 0 == main_~x~1#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 36: Hoare triple {22904#false} assume main_~x~1#1.base < #StackHeapBarrier; {22904#false} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 37: Hoare triple {22904#false} 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); {22904#false} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 38: Hoare triple {22904#false} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,005 INFO L290 TraceCheckUtils]: 39: Hoare triple {22904#false} assume !(1 == #valid[main_~first~0#1.base]); {22904#false} is VALID [2022-02-20 23:46:35,006 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:35,006 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:35,006 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [353250790] [2022-02-20 23:46:35,006 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [353250790] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:35,006 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [343773486] [2022-02-20 23:46:35,006 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:35,006 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:35,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:35,008 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:46:35,067 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:46:35,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:35,196 INFO L263 TraceCheckSpWp]: Trace formula consists of 314 conjuncts, 23 conjunts are in the unsatisfiable core [2022-02-20 23:46:35,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:35,206 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:35,215 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:46:35,264 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:35,264 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:46:35,339 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:46:35,406 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:35,407 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 16 [2022-02-20 23:46:35,522 INFO L290 TraceCheckUtils]: 0: Hoare triple {22903#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(12, 2); {22903#true} is VALID [2022-02-20 23:46:35,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {22903#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {22903#true} is VALID [2022-02-20 23:46:35,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {22903#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22903#true} is VALID [2022-02-20 23:46:35,523 INFO L290 TraceCheckUtils]: 3: Hoare triple {22903#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {22924#(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:46:35,523 INFO L290 TraceCheckUtils]: 4: Hoare triple {22924#(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); {22924#(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:46:35,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {22924#(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: L539-2 {22924#(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:46:35,524 INFO L290 TraceCheckUtils]: 6: Hoare triple {22924#(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: L541 {22924#(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:46:35,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {22924#(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: L542 {22924#(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:46:35,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {22924#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {22924#(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:46:35,526 INFO L290 TraceCheckUtils]: 9: Hoare triple {22924#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {22924#(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:46:35,526 INFO L290 TraceCheckUtils]: 10: Hoare triple {22924#(and (= |ULTIMATE.start_main_~x~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; {22924#(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:46:35,527 INFO L290 TraceCheckUtils]: 11: Hoare triple {22924#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {22924#(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:46:35,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {22924#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,529 INFO L290 TraceCheckUtils]: 16: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,529 INFO L290 TraceCheckUtils]: 17: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,530 INFO L290 TraceCheckUtils]: 18: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,530 INFO L290 TraceCheckUtils]: 19: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,531 INFO L290 TraceCheckUtils]: 20: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L553 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,531 INFO L290 TraceCheckUtils]: 21: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,532 INFO L290 TraceCheckUtils]: 22: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L554 {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,532 INFO L290 TraceCheckUtils]: 23: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,533 INFO L290 TraceCheckUtils]: 24: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,533 INFO L290 TraceCheckUtils]: 25: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,533 INFO L290 TraceCheckUtils]: 26: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |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; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,534 INFO L290 TraceCheckUtils]: 27: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,534 INFO L290 TraceCheckUtils]: 28: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {23006#(not (= (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:46:35,535 INFO L290 TraceCheckUtils]: 30: Hoare triple {23006#(not (= (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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {23006#(not (= (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:46:35,535 INFO L290 TraceCheckUtils]: 31: Hoare triple {23006#(not (= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {23006#(not (= (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:46:35,536 INFO L290 TraceCheckUtils]: 32: Hoare triple {23006#(not (= (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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {23016#(and (or (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:35,536 INFO L290 TraceCheckUtils]: 33: Hoare triple {23016#(and (or (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|))) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {23020#(and (or (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 34: Hoare triple {23020#(and (or (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {23024#(and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 35: Hoare triple {23024#(and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} assume 0 == main_~x~1#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 36: Hoare triple {22904#false} assume main_~x~1#1.base < #StackHeapBarrier; {22904#false} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 37: Hoare triple {22904#false} 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); {22904#false} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 38: Hoare triple {22904#false} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,537 INFO L290 TraceCheckUtils]: 39: Hoare triple {22904#false} assume !(1 == #valid[main_~first~0#1.base]); {22904#false} is VALID [2022-02-20 23:46:35,538 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:35,538 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:35,638 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 11 treesize of output 9 [2022-02-20 23:46:35,640 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 20 treesize of output 18 [2022-02-20 23:46:35,883 INFO L290 TraceCheckUtils]: 39: Hoare triple {22904#false} assume !(1 == #valid[main_~first~0#1.base]); {22904#false} is VALID [2022-02-20 23:46:35,883 INFO L290 TraceCheckUtils]: 38: Hoare triple {22904#false} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,883 INFO L290 TraceCheckUtils]: 37: Hoare triple {22904#false} 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); {22904#false} is VALID [2022-02-20 23:46:35,883 INFO L290 TraceCheckUtils]: 36: Hoare triple {22904#false} assume main_~x~1#1.base < #StackHeapBarrier; {22904#false} is VALID [2022-02-20 23:46:35,884 INFO L290 TraceCheckUtils]: 35: Hoare triple {23024#(and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} assume 0 == main_~x~1#1.offset; {22904#false} is VALID [2022-02-20 23:46:35,884 INFO L290 TraceCheckUtils]: 34: Hoare triple {23055#(or (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|)))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {23024#(and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:46:35,885 INFO L290 TraceCheckUtils]: 33: Hoare triple {23059#(or (and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {23055#(or (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|)))} is VALID [2022-02-20 23:46:35,885 INFO L290 TraceCheckUtils]: 32: Hoare triple {23006#(not (= (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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {23059#(or (and (not (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|)) (not (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:35,885 INFO L290 TraceCheckUtils]: 31: Hoare triple {23006#(not (= (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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {23006#(not (= (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:46:35,886 INFO L290 TraceCheckUtils]: 30: Hoare triple {23006#(not (= (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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {23006#(not (= (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:46:35,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {23006#(not (= (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:46:35,887 INFO L290 TraceCheckUtils]: 28: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,887 INFO L290 TraceCheckUtils]: 26: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |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; {22996#(not (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)))} is VALID [2022-02-20 23:46:35,888 INFO L290 TraceCheckUtils]: 25: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,889 INFO L290 TraceCheckUtils]: 22: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L554 {22983#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:35,889 INFO L290 TraceCheckUtils]: 21: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,890 INFO L290 TraceCheckUtils]: 20: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L553 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,891 INFO L290 TraceCheckUtils]: 18: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,892 INFO L290 TraceCheckUtils]: 16: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,892 INFO L290 TraceCheckUtils]: 15: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,893 INFO L290 TraceCheckUtils]: 13: Hoare triple {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,893 INFO L290 TraceCheckUtils]: 12: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {22952#(and (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:35,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,895 INFO L290 TraceCheckUtils]: 10: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 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: L543 {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,897 INFO L290 TraceCheckUtils]: 7: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 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: L542 {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,898 INFO L290 TraceCheckUtils]: 6: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,899 INFO L290 TraceCheckUtils]: 4: Hoare triple {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,900 INFO L290 TraceCheckUtils]: 3: Hoare triple {22903#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {23123#(forall ((|v_ULTIMATE.start_main_~y~0#1.base_40| Int)) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (not (= |ULTIMATE.start_main_~x~0#1.base| |v_ULTIMATE.start_main_~y~0#1.base_40|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~y~0#1.base_40|) 0))))} is VALID [2022-02-20 23:46:35,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {22903#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {22903#true} is VALID [2022-02-20 23:46:35,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {22903#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {22903#true} is VALID [2022-02-20 23:46:35,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {22903#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(12, 2); {22903#true} is VALID [2022-02-20 23:46:35,900 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:35,900 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [343773486] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:35,900 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:35,901 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 20 [2022-02-20 23:46:35,901 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [711448908] [2022-02-20 23:46:35,901 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:35,901 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:46:35,901 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:35,902 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:35,962 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:35,963 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:46:35,963 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:35,963 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:46:35,963 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=332, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:46:35,963 INFO L87 Difference]: Start difference. First operand 172 states and 197 transitions. Second operand has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,172 INFO L93 Difference]: Finished difference Result 260 states and 288 transitions. [2022-02-20 23:46:37,172 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:46:37,172 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:46:37,172 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:37,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 169 transitions. [2022-02-20 23:46:37,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 169 transitions. [2022-02-20 23:46:37,174 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 169 transitions. [2022-02-20 23:46:37,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:37,268 INFO L225 Difference]: With dead ends: 260 [2022-02-20 23:46:37,268 INFO L226 Difference]: Without dead ends: 260 [2022-02-20 23:46:37,268 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 68 SyntacticMatches, 2 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 121 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=175, Invalid=817, Unknown=0, NotChecked=0, Total=992 [2022-02-20 23:46:37,269 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 257 mSDsluCounter, 539 mSDsCounter, 0 mSdLazyCounter, 725 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 257 SdHoareTripleChecker+Valid, 588 SdHoareTripleChecker+Invalid, 773 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 725 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 23 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:37,269 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [257 Valid, 588 Invalid, 773 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 725 Invalid, 0 Unknown, 23 Unchecked, 0.4s Time] [2022-02-20 23:46:37,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 260 states. [2022-02-20 23:46:37,271 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 260 to 172. [2022-02-20 23:46:37,271 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:37,271 INFO L82 GeneralOperation]: Start isEquivalent. First operand 260 states. Second operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,271 INFO L74 IsIncluded]: Start isIncluded. First operand 260 states. Second operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,272 INFO L87 Difference]: Start difference. First operand 260 states. Second operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,275 INFO L93 Difference]: Finished difference Result 260 states and 288 transitions. [2022-02-20 23:46:37,275 INFO L276 IsEmpty]: Start isEmpty. Operand 260 states and 288 transitions. [2022-02-20 23:46:37,275 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:37,275 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:37,275 INFO L74 IsIncluded]: Start isIncluded. First operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 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 260 states. [2022-02-20 23:46:37,276 INFO L87 Difference]: Start difference. First operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 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 260 states. [2022-02-20 23:46:37,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,278 INFO L93 Difference]: Finished difference Result 260 states and 288 transitions. [2022-02-20 23:46:37,278 INFO L276 IsEmpty]: Start isEmpty. Operand 260 states and 288 transitions. [2022-02-20 23:46:37,279 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:37,279 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:37,279 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:37,279 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:37,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 172 states, 160 states have (on average 1.225) internal successors, (196), 171 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 172 states to 172 states and 196 transitions. [2022-02-20 23:46:37,280 INFO L78 Accepts]: Start accepts. Automaton has 172 states and 196 transitions. Word has length 40 [2022-02-20 23:46:37,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:37,281 INFO L470 AbstractCegarLoop]: Abstraction has 172 states and 196 transitions. [2022-02-20 23:46:37,281 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 4.3) internal successors, (86), 20 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,281 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 196 transitions. [2022-02-20 23:46:37,281 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 23:46:37,281 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:37,281 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:37,298 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:46:37,488 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,SelfDestructingSolverStorable32 [2022-02-20 23:46:37,488 INFO L402 AbstractCegarLoop]: === Iteration 34 === Targeting ULTIMATE.startErr36ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:37,488 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:37,488 INFO L85 PathProgramCache]: Analyzing trace with hash 737292038, now seen corresponding path program 1 times [2022-02-20 23:46:37,488 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:37,488 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1366199974] [2022-02-20 23:46:37,488 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:37,488 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:37,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 0: Hoare triple {24136#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(12, 2); {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {24136#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 2: Hoare triple {24136#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 3: Hoare triple {24136#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 4: Hoare triple {24136#true} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {24136#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {24136#true} is VALID [2022-02-20 23:46:37,524 INFO L290 TraceCheckUtils]: 6: Hoare triple {24136#true} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {24136#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: L542 {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {24136#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: L543 {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 9: Hoare triple {24136#true} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 10: Hoare triple {24136#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 11: Hoare triple {24136#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {24136#true} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {24136#true} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {24136#true} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {24136#true} is VALID [2022-02-20 23:46:37,525 INFO L290 TraceCheckUtils]: 15: Hoare triple {24136#true} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 16: Hoare triple {24136#true} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 17: Hoare triple {24136#true} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 18: Hoare triple {24136#true} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 19: Hoare triple {24136#true} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 20: Hoare triple {24136#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: L553 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {24136#true} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 22: Hoare triple {24136#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: L554 {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 23: Hoare triple {24136#true} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24136#true} is VALID [2022-02-20 23:46:37,526 INFO L290 TraceCheckUtils]: 24: Hoare triple {24136#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 25: Hoare triple {24136#true} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 26: Hoare triple {24136#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; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 27: Hoare triple {24136#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 28: Hoare triple {24136#true} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 29: Hoare triple {24136#true} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 30: Hoare triple {24136#true} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 31: Hoare triple {24136#true} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 32: Hoare triple {24136#true} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {24136#true} is VALID [2022-02-20 23:46:37,527 INFO L290 TraceCheckUtils]: 33: Hoare triple {24136#true} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {24136#true} is VALID [2022-02-20 23:46:37,528 INFO L290 TraceCheckUtils]: 34: Hoare triple {24136#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; {24138#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) (select |#valid| |ULTIMATE.start_main_~y~1#1.base|))} is VALID [2022-02-20 23:46:37,528 INFO L290 TraceCheckUtils]: 35: Hoare triple {24138#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) (select |#valid| |ULTIMATE.start_main_~y~1#1.base|))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,529 INFO L290 TraceCheckUtils]: 36: Hoare triple {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,529 INFO L290 TraceCheckUtils]: 37: Hoare triple {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} assume 0 == main_~z~0#1.offset; {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,529 INFO L290 TraceCheckUtils]: 38: Hoare triple {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} assume main_~z~0#1.base < #StackHeapBarrier; {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,529 INFO L290 TraceCheckUtils]: 39: Hoare triple {24139#(= (select |#valid| |ULTIMATE.start_main_~z~0#1.base|) 1)} assume !(0 == main_~z~0#1.base || 1 == #valid[main_~z~0#1.base]); {24137#false} is VALID [2022-02-20 23:46:37,530 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:46:37,530 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:37,530 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1366199974] [2022-02-20 23:46:37,530 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1366199974] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:46:37,530 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:46:37,530 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:46:37,530 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1096351883] [2022-02-20 23:46:37,530 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:46:37,531 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:46:37,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:37,531 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:37,552 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:46:37,552 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:37,555 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:46:37,555 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:46:37,555 INFO L87 Difference]: Start difference. First operand 172 states and 196 transitions. Second operand has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,641 INFO L93 Difference]: Finished difference Result 171 states and 194 transitions. [2022-02-20 23:46:37,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:46:37,641 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:46:37,641 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:37,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 23:46:37,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-02-20 23:46:37,643 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-02-20 23:46:37,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:37,669 INFO L225 Difference]: With dead ends: 171 [2022-02-20 23:46:37,669 INFO L226 Difference]: Without dead ends: 171 [2022-02-20 23:46:37,669 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:46:37,671 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 5 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 64 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:37,671 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 103 Invalid, 64 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:46:37,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-02-20 23:46:37,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 171. [2022-02-20 23:46:37,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:37,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,673 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,674 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,675 INFO L93 Difference]: Finished difference Result 171 states and 194 transitions. [2022-02-20 23:46:37,675 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 194 transitions. [2022-02-20 23:46:37,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:37,675 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:37,676 INFO L74 IsIncluded]: Start isIncluded. First operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 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 171 states. [2022-02-20 23:46:37,676 INFO L87 Difference]: Start difference. First operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 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 171 states. [2022-02-20 23:46:37,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:37,677 INFO L93 Difference]: Finished difference Result 171 states and 194 transitions. [2022-02-20 23:46:37,677 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 194 transitions. [2022-02-20 23:46:37,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:37,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:37,678 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:37,678 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:37,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 171 states, 160 states have (on average 1.2125) internal successors, (194), 170 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 194 transitions. [2022-02-20 23:46:37,679 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 194 transitions. Word has length 40 [2022-02-20 23:46:37,679 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:37,679 INFO L470 AbstractCegarLoop]: Abstraction has 171 states and 194 transitions. [2022-02-20 23:46:37,679 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 12.666666666666666) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:37,680 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 194 transitions. [2022-02-20 23:46:37,680 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:46:37,680 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:37,680 INFO L514 BasicCegarLoop]: trace histogram [3, 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, 1, 1] [2022-02-20 23:46:37,680 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable33 [2022-02-20 23:46:37,680 INFO L402 AbstractCegarLoop]: === Iteration 35 === Targeting ULTIMATE.startErr28REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:37,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:37,681 INFO L85 PathProgramCache]: Analyzing trace with hash 1696179932, now seen corresponding path program 1 times [2022-02-20 23:46:37,681 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:37,681 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1458468970] [2022-02-20 23:46:37,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:37,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:37,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:37,894 INFO L290 TraceCheckUtils]: 0: Hoare triple {24828#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(12, 2); {24828#true} is VALID [2022-02-20 23:46:37,894 INFO L290 TraceCheckUtils]: 1: Hoare triple {24828#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {24828#true} is VALID [2022-02-20 23:46:37,894 INFO L290 TraceCheckUtils]: 2: Hoare triple {24828#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24828#true} is VALID [2022-02-20 23:46:37,895 INFO L290 TraceCheckUtils]: 3: Hoare triple {24828#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {24830#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:37,895 INFO L290 TraceCheckUtils]: 4: Hoare triple {24830#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {24830#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:37,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {24830#(= |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: L539-2 {24831#(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:46:37,896 INFO L290 TraceCheckUtils]: 6: Hoare triple {24831#(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: L541 {24831#(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:46:37,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {24831#(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: L542 {24831#(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:46:37,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {24831#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {24831#(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:46:37,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {24831#(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:46:37,897 INFO L290 TraceCheckUtils]: 10: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~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; {24831#(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:46:37,908 INFO L290 TraceCheckUtils]: 11: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24831#(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:46:37,908 INFO L290 TraceCheckUtils]: 12: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {24831#(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:46:37,909 INFO L290 TraceCheckUtils]: 13: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~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;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; {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:37,909 INFO L290 TraceCheckUtils]: 14: Hoare triple {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:37,910 INFO L290 TraceCheckUtils]: 15: Hoare triple {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,910 INFO L290 TraceCheckUtils]: 16: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,910 INFO L290 TraceCheckUtils]: 17: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L539-2 {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,911 INFO L290 TraceCheckUtils]: 18: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L541 {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,911 INFO L290 TraceCheckUtils]: 19: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L542 {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,912 INFO L290 TraceCheckUtils]: 20: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L543 {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,912 INFO L290 TraceCheckUtils]: 21: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,913 INFO L290 TraceCheckUtils]: 22: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,913 INFO L290 TraceCheckUtils]: 23: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,913 INFO L290 TraceCheckUtils]: 24: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,914 INFO L290 TraceCheckUtils]: 25: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,914 INFO L290 TraceCheckUtils]: 26: Hoare triple {24833#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L562 {24834#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~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_~last~0#1.offset| 12))) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:37,915 INFO L290 TraceCheckUtils]: 27: Hoare triple {24834#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~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_~last~0#1.offset| 12))) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L562-1 {24835#(and (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:37,916 INFO L290 TraceCheckUtils]: 28: Hoare triple {24835#(and (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:37,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:37,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:37,917 INFO L290 TraceCheckUtils]: 31: Hoare triple {24836#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24837#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:37,917 INFO L290 TraceCheckUtils]: 32: Hoare triple {24837#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {24838#(and (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} is VALID [2022-02-20 23:46:37,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {24838#(and (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,918 INFO L290 TraceCheckUtils]: 34: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,918 INFO L290 TraceCheckUtils]: 35: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,918 INFO L290 TraceCheckUtils]: 36: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#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); {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,919 INFO L290 TraceCheckUtils]: 37: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume 0 == main_~x~1#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,919 INFO L290 TraceCheckUtils]: 38: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume main_~x~1#1.base < #StackHeapBarrier; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:37,919 INFO L290 TraceCheckUtils]: 39: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} 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); {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,920 INFO L290 TraceCheckUtils]: 40: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:37,920 INFO L290 TraceCheckUtils]: 41: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(1 == #valid[main_~first~0#1.base]); {24829#false} is VALID [2022-02-20 23:46:37,920 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:37,920 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:37,920 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1458468970] [2022-02-20 23:46:37,921 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1458468970] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:37,921 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [830440233] [2022-02-20 23:46:37,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:37,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:37,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:37,922 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:46:37,923 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:46:38,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:38,048 INFO L263 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:46:38,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:38,059 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:38,066 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:46:38,161 INFO L356 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2022-02-20 23:46:38,162 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:46:38,365 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:46:38,396 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:46:38,396 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 29 [2022-02-20 23:46:38,483 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:46:38,583 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 17 [2022-02-20 23:46:38,592 INFO L290 TraceCheckUtils]: 0: Hoare triple {24828#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(12, 2); {24828#true} is VALID [2022-02-20 23:46:38,592 INFO L290 TraceCheckUtils]: 1: Hoare triple {24828#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {24828#true} is VALID [2022-02-20 23:46:38,592 INFO L290 TraceCheckUtils]: 2: Hoare triple {24828#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24828#true} is VALID [2022-02-20 23:46:38,593 INFO L290 TraceCheckUtils]: 3: Hoare triple {24828#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {24831#(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:46:38,593 INFO L290 TraceCheckUtils]: 4: Hoare triple {24831#(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); {24831#(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:46:38,594 INFO L290 TraceCheckUtils]: 5: Hoare triple {24831#(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: L539-2 {24831#(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:46:38,594 INFO L290 TraceCheckUtils]: 6: Hoare triple {24831#(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: L541 {24831#(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:46:38,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {24831#(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: L542 {24831#(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:46:38,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {24831#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {24831#(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:46:38,596 INFO L290 TraceCheckUtils]: 9: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {24831#(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:46:38,596 INFO L290 TraceCheckUtils]: 10: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~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; {24831#(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:46:38,596 INFO L290 TraceCheckUtils]: 11: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24831#(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:46:38,597 INFO L290 TraceCheckUtils]: 12: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {24831#(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:46:38,597 INFO L290 TraceCheckUtils]: 13: Hoare triple {24831#(and (= |ULTIMATE.start_main_~x~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;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; {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:38,597 INFO L290 TraceCheckUtils]: 14: Hoare triple {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:38,598 INFO L290 TraceCheckUtils]: 15: Hoare triple {24832#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,599 INFO L290 TraceCheckUtils]: 16: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,599 INFO L290 TraceCheckUtils]: 17: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L539-2 {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,600 INFO L290 TraceCheckUtils]: 18: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L541 {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,600 INFO L290 TraceCheckUtils]: 19: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L542 {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,601 INFO L290 TraceCheckUtils]: 20: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L543 {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,601 INFO L290 TraceCheckUtils]: 21: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,602 INFO L290 TraceCheckUtils]: 22: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,602 INFO L290 TraceCheckUtils]: 23: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,603 INFO L290 TraceCheckUtils]: 24: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,603 INFO L290 TraceCheckUtils]: 25: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,604 INFO L290 TraceCheckUtils]: 26: Hoare triple {24889#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L562 {24923#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 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|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:38,605 INFO L290 TraceCheckUtils]: 27: Hoare triple {24923#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 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|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (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: L562-1 {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,605 INFO L290 TraceCheckUtils]: 28: Hoare triple {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |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; {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,605 INFO L290 TraceCheckUtils]: 29: Hoare triple {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,606 INFO L290 TraceCheckUtils]: 30: Hoare triple {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,606 INFO L290 TraceCheckUtils]: 31: Hoare triple {24927#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24940#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,607 INFO L290 TraceCheckUtils]: 32: Hoare triple {24940#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12)) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {24944#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} is VALID [2022-02-20 23:46:38,607 INFO L290 TraceCheckUtils]: 33: Hoare triple {24944#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,608 INFO L290 TraceCheckUtils]: 34: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,608 INFO L290 TraceCheckUtils]: 35: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,609 INFO L290 TraceCheckUtils]: 36: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#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); {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,609 INFO L290 TraceCheckUtils]: 37: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume 0 == main_~x~1#1.offset; {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,609 INFO L290 TraceCheckUtils]: 38: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume main_~x~1#1.base < #StackHeapBarrier; {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,610 INFO L290 TraceCheckUtils]: 39: Hoare triple {24948#(and (= (select |#valid| |ULTIMATE.start_main_~x~1#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} 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); {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:38,610 INFO L290 TraceCheckUtils]: 40: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:38,610 INFO L290 TraceCheckUtils]: 41: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(1 == #valid[main_~first~0#1.base]); {24829#false} is VALID [2022-02-20 23:46:38,611 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:38,611 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:38,726 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_2271 (Array Int Int))) (not (= (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)) |c_ULTIMATE.start_main_~first~0#1.base|))) (forall ((v_ArrVal_2271 (Array Int Int))) (= (select |c_#valid| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12))) 1))) is different from false [2022-02-20 23:46:38,734 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:38,734 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:46:38,740 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:38,740 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 39 treesize of output 42 [2022-02-20 23:46:38,743 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 18 [2022-02-20 23:46:38,757 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:38,757 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 24 treesize of output 25 [2022-02-20 23:46:38,758 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:38,762 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:38,763 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 10 [2022-02-20 23:46:38,992 INFO L290 TraceCheckUtils]: 41: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !(1 == #valid[main_~first~0#1.base]); {24829#false} is VALID [2022-02-20 23:46:38,993 INFO L290 TraceCheckUtils]: 40: Hoare triple {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:38,993 INFO L290 TraceCheckUtils]: 39: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} 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); {24840#(= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1)} is VALID [2022-02-20 23:46:38,993 INFO L290 TraceCheckUtils]: 38: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume main_~x~1#1.base < #StackHeapBarrier; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,994 INFO L290 TraceCheckUtils]: 37: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} assume 0 == main_~x~1#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,994 INFO L290 TraceCheckUtils]: 36: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#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); {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,994 INFO L290 TraceCheckUtils]: 35: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,995 INFO L290 TraceCheckUtils]: 34: Hoare triple {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,995 INFO L290 TraceCheckUtils]: 33: Hoare triple {24838#(and (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {24839#(and (= (select |#valid| |ULTIMATE.start_main_~first~0#1.base|) 1) (not (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,996 INFO L290 TraceCheckUtils]: 32: Hoare triple {25000#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {24838#(and (not (= |ULTIMATE.start_main_#t~mem9#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1))} is VALID [2022-02-20 23:46:38,996 INFO L290 TraceCheckUtils]: 31: Hoare triple {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {25000#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:38,997 INFO L290 TraceCheckUtils]: 30: Hoare triple {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,997 INFO L290 TraceCheckUtils]: 29: Hoare triple {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,997 INFO L290 TraceCheckUtils]: 28: Hoare triple {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |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; {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,998 INFO L290 TraceCheckUtils]: 27: Hoare triple {25017#(and (forall ((v_ArrVal_2271 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1)) (forall ((v_ArrVal_2271 (Array Int Int))) (not (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))))} 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: L562-1 {25004#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:38,999 INFO L290 TraceCheckUtils]: 26: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (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: L562 {25017#(and (forall ((v_ArrVal_2271 (Array Int Int))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) 1)) (forall ((v_ArrVal_2271 (Array Int Int))) (not (= |ULTIMATE.start_main_~first~0#1.base| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2271) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))))} is VALID [2022-02-20 23:46:39,000 INFO L290 TraceCheckUtils]: 25: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,000 INFO L290 TraceCheckUtils]: 24: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,001 INFO L290 TraceCheckUtils]: 22: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,001 INFO L290 TraceCheckUtils]: 21: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (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: L543 {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,003 INFO L290 TraceCheckUtils]: 19: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (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: L542 {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,003 INFO L290 TraceCheckUtils]: 18: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (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: L541 {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,004 INFO L290 TraceCheckUtils]: 17: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (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: L539-2 {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,004 INFO L290 TraceCheckUtils]: 16: Hoare triple {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,005 INFO L290 TraceCheckUtils]: 15: Hoare triple {25055#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_43| Int)) (or (and (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_43|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_43|) 0))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {25021#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:39,005 INFO L290 TraceCheckUtils]: 14: Hoare triple {25055#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_43| Int)) (or (and (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_43|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_43|) 0))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {25055#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_43| Int)) (or (and (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_43|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_43|) 0))))} is VALID [2022-02-20 23:46:39,006 INFO L290 TraceCheckUtils]: 13: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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; {25055#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_43| Int)) (or (and (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_43|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_43|) 0))))} is VALID [2022-02-20 23:46:39,006 INFO L290 TraceCheckUtils]: 12: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,006 INFO L290 TraceCheckUtils]: 11: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,007 INFO L290 TraceCheckUtils]: 10: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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: L543 {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,008 INFO L290 TraceCheckUtils]: 7: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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: L542 {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,008 INFO L290 TraceCheckUtils]: 6: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,008 INFO L290 TraceCheckUtils]: 4: Hoare triple {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,009 INFO L290 TraceCheckUtils]: 3: Hoare triple {24828#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {25062#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:39,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {24828#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {24828#true} is VALID [2022-02-20 23:46:39,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {24828#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {24828#true} is VALID [2022-02-20 23:46:39,009 INFO L290 TraceCheckUtils]: 0: Hoare triple {24828#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(12, 2); {24828#true} is VALID [2022-02-20 23:46:39,009 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 14 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:39,010 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [830440233] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:39,010 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:39,010 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 24 [2022-02-20 23:46:39,010 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1576656021] [2022-02-20 23:46:39,011 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:39,011 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:39,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:39,011 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:39,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:39,092 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-02-20 23:46:39,092 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:39,092 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-02-20 23:46:39,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=465, Unknown=1, NotChecked=44, Total=600 [2022-02-20 23:46:39,092 INFO L87 Difference]: Start difference. First operand 171 states and 194 transitions. Second operand has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:40,645 INFO L93 Difference]: Finished difference Result 255 states and 281 transitions. [2022-02-20 23:46:40,645 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:46:40,645 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:40,646 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:40,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 166 transitions. [2022-02-20 23:46:40,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 166 transitions. [2022-02-20 23:46:40,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 166 transitions. [2022-02-20 23:46:40,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:40,764 INFO L225 Difference]: With dead ends: 255 [2022-02-20 23:46:40,764 INFO L226 Difference]: Without dead ends: 255 [2022-02-20 23:46:40,765 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 72 SyntacticMatches, 3 SemanticMatches, 34 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 277 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=229, Invalid=964, Unknown=1, NotChecked=66, Total=1260 [2022-02-20 23:46:40,765 INFO L933 BasicCegarLoop]: 46 mSDtfsCounter, 295 mSDsluCounter, 508 mSDsCounter, 0 mSdLazyCounter, 855 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 295 SdHoareTripleChecker+Valid, 554 SdHoareTripleChecker+Invalid, 1099 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 855 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 208 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:40,765 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [295 Valid, 554 Invalid, 1099 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 855 Invalid, 0 Unknown, 208 Unchecked, 0.6s Time] [2022-02-20 23:46:40,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 255 states. [2022-02-20 23:46:40,767 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 255 to 225. [2022-02-20 23:46:40,767 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:40,768 INFO L82 GeneralOperation]: Start isEquivalent. First operand 255 states. Second operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,768 INFO L74 IsIncluded]: Start isIncluded. First operand 255 states. Second operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,768 INFO L87 Difference]: Start difference. First operand 255 states. Second operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:40,771 INFO L93 Difference]: Finished difference Result 255 states and 281 transitions. [2022-02-20 23:46:40,771 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 281 transitions. [2022-02-20 23:46:40,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:40,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:40,772 INFO L74 IsIncluded]: Start isIncluded. First operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 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 255 states. [2022-02-20 23:46:40,772 INFO L87 Difference]: Start difference. First operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 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 255 states. [2022-02-20 23:46:40,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:40,774 INFO L93 Difference]: Finished difference Result 255 states and 281 transitions. [2022-02-20 23:46:40,774 INFO L276 IsEmpty]: Start isEmpty. Operand 255 states and 281 transitions. [2022-02-20 23:46:40,775 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:40,775 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:40,775 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:40,775 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:40,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 225 states, 214 states have (on average 1.1962616822429906) internal successors, (256), 224 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 225 states to 225 states and 256 transitions. [2022-02-20 23:46:40,777 INFO L78 Accepts]: Start accepts. Automaton has 225 states and 256 transitions. Word has length 42 [2022-02-20 23:46:40,778 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:40,778 INFO L470 AbstractCegarLoop]: Abstraction has 225 states and 256 transitions. [2022-02-20 23:46:40,778 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 4.166666666666667) internal successors, (100), 25 states have internal predecessors, (100), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:40,778 INFO L276 IsEmpty]: Start isEmpty. Operand 225 states and 256 transitions. [2022-02-20 23:46:40,778 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:46:40,778 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:40,778 INFO L514 BasicCegarLoop]: trace histogram [3, 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, 1, 1] [2022-02-20 23:46:40,795 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-02-20 23:46:40,987 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,SelfDestructingSolverStorable34 [2022-02-20 23:46:40,987 INFO L402 AbstractCegarLoop]: === Iteration 36 === Targeting ULTIMATE.startErr29REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:40,988 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:40,988 INFO L85 PathProgramCache]: Analyzing trace with hash 1696179933, now seen corresponding path program 1 times [2022-02-20 23:46:40,988 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:40,988 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1202974805] [2022-02-20 23:46:40,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:40,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:41,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:41,367 INFO L290 TraceCheckUtils]: 0: Hoare triple {26117#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(12, 2); {26117#true} is VALID [2022-02-20 23:46:41,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {26117#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {26117#true} is VALID [2022-02-20 23:46:41,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {26117#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26117#true} is VALID [2022-02-20 23:46:41,368 INFO L290 TraceCheckUtils]: 3: Hoare triple {26117#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26119#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:41,368 INFO L290 TraceCheckUtils]: 4: Hoare triple {26119#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26119#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:41,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {26119#(= |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: L539-2 {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,369 INFO L290 TraceCheckUtils]: 6: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L541 {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L542 {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,371 INFO L290 TraceCheckUtils]: 8: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,371 INFO L290 TraceCheckUtils]: 9: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,372 INFO L290 TraceCheckUtils]: 10: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~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; {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,372 INFO L290 TraceCheckUtils]: 11: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:41,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {26120#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~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;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; {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,374 INFO L290 TraceCheckUtils]: 15: Hoare triple {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,375 INFO L290 TraceCheckUtils]: 16: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L539-2 {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,376 INFO L290 TraceCheckUtils]: 18: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L541 {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,376 INFO L290 TraceCheckUtils]: 19: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L542 {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,377 INFO L290 TraceCheckUtils]: 20: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L543 {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,378 INFO L290 TraceCheckUtils]: 21: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,378 INFO L290 TraceCheckUtils]: 22: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,379 INFO L290 TraceCheckUtils]: 23: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,379 INFO L290 TraceCheckUtils]: 24: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,380 INFO L290 TraceCheckUtils]: 25: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:41,380 INFO L290 TraceCheckUtils]: 26: Hoare triple {26122#(and (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) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} 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: L562 {26123#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= |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| 12))))} is VALID [2022-02-20 23:46:41,381 INFO L290 TraceCheckUtils]: 27: Hoare triple {26123#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= |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| 12))))} 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: L562-1 {26124#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:41,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {26124#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:41,382 INFO L290 TraceCheckUtils]: 29: Hoare triple {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:41,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:41,383 INFO L290 TraceCheckUtils]: 31: Hoare triple {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:41,384 INFO L290 TraceCheckUtils]: 32: Hoare triple {26125#(and (= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {26126#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)))} is VALID [2022-02-20 23:46:41,384 INFO L290 TraceCheckUtils]: 33: Hoare triple {26126#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= 20 (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {26127#(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:46:41,384 INFO L290 TraceCheckUtils]: 34: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {26127#(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:46:41,385 INFO L290 TraceCheckUtils]: 35: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {26127#(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:46:41,385 INFO L290 TraceCheckUtils]: 36: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {26127#(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:46:41,386 INFO L290 TraceCheckUtils]: 37: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume 0 == main_~x~1#1.offset; {26127#(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:46:41,386 INFO L290 TraceCheckUtils]: 38: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {26127#(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:46:41,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 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); {26127#(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:46:41,387 INFO L290 TraceCheckUtils]: 40: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26127#(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:46:41,387 INFO L290 TraceCheckUtils]: 41: Hoare triple {26127#(and (= (select |#length| |ULTIMATE.start_main_~first~0#1.base|) 20) (= |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); {26118#false} is VALID [2022-02-20 23:46:41,388 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:41,388 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:41,388 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1202974805] [2022-02-20 23:46:41,388 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1202974805] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:41,388 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2055570154] [2022-02-20 23:46:41,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:41,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:41,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:41,390 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:46:41,391 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:46:41,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:41,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:46:41,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:41,575 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:41,585 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:46:41,687 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:41,688 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:46:41,918 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:46:41,925 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:46:41,965 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:46:41,966 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 46 treesize of output 45 [2022-02-20 23:46:41,970 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 24 [2022-02-20 23:46:42,074 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:46:42,089 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 15 treesize of output 7 [2022-02-20 23:46:42,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {26117#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(12, 2); {26117#true} is VALID [2022-02-20 23:46:42,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {26117#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {26117#true} is VALID [2022-02-20 23:46:42,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {26117#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26117#true} is VALID [2022-02-20 23:46:42,176 INFO L290 TraceCheckUtils]: 3: Hoare triple {26117#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26140#(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:46:42,177 INFO L290 TraceCheckUtils]: 4: Hoare triple {26140#(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); {26140#(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:46:42,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {26140#(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: L539-2 {26140#(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:46:42,178 INFO L290 TraceCheckUtils]: 6: Hoare triple {26140#(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: L541 {26140#(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:46:42,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {26140#(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: L542 {26140#(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:46:42,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {26140#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {26140#(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:46:42,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {26140#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26140#(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:46:42,180 INFO L290 TraceCheckUtils]: 10: Hoare triple {26140#(and (= |ULTIMATE.start_main_~x~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; {26140#(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:46:42,180 INFO L290 TraceCheckUtils]: 11: Hoare triple {26140#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26140#(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:46:42,181 INFO L290 TraceCheckUtils]: 12: Hoare triple {26140#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26140#(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:46:42,181 INFO L290 TraceCheckUtils]: 13: Hoare triple {26140#(and (= |ULTIMATE.start_main_~x~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;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; {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,181 INFO L290 TraceCheckUtils]: 14: Hoare triple {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,182 INFO L290 TraceCheckUtils]: 15: Hoare triple {26121#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,182 INFO L290 TraceCheckUtils]: 16: Hoare triple {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,183 INFO L290 TraceCheckUtils]: 17: Hoare triple {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L539-2 {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {26177#(and (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.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L541 {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,184 INFO L290 TraceCheckUtils]: 19: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L542 {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,185 INFO L290 TraceCheckUtils]: 20: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |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: L543 {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,185 INFO L290 TraceCheckUtils]: 21: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,186 INFO L290 TraceCheckUtils]: 22: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,186 INFO L290 TraceCheckUtils]: 23: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,187 INFO L290 TraceCheckUtils]: 24: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,187 INFO L290 TraceCheckUtils]: 25: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:42,188 INFO L290 TraceCheckUtils]: 26: Hoare triple {26187#(and (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|) (<= (+ 20 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} 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: L562 {26212#(and (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|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:42,189 INFO L290 TraceCheckUtils]: 27: Hoare triple {26212#(and (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|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~x~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: L562-1 {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:46:42,190 INFO L290 TraceCheckUtils]: 28: Hoare triple {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:46:42,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:46:42,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:46:42,191 INFO L290 TraceCheckUtils]: 31: Hoare triple {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:46:42,192 INFO L290 TraceCheckUtils]: 32: Hoare triple {26216#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) |ULTIMATE.start_main_~first~0#1.base|)) (<= 20 (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {26232#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) (= |ULTIMATE.start_main_#t~mem9#1.offset| 0))} is VALID [2022-02-20 23:46:42,192 INFO L290 TraceCheckUtils]: 33: Hoare triple {26232#(and (<= 20 (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) (= |ULTIMATE.start_main_#t~mem9#1.offset| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,192 INFO L290 TraceCheckUtils]: 34: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,193 INFO L290 TraceCheckUtils]: 35: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,193 INFO L290 TraceCheckUtils]: 36: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,194 INFO L290 TraceCheckUtils]: 37: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume 0 == main_~x~1#1.offset; {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,194 INFO L290 TraceCheckUtils]: 38: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume main_~x~1#1.base < #StackHeapBarrier; {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,194 INFO L290 TraceCheckUtils]: 39: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} 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); {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,195 INFO L290 TraceCheckUtils]: 40: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 20 (select |#length| |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:42,195 INFO L290 TraceCheckUtils]: 41: Hoare triple {26236#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (<= 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); {26118#false} is VALID [2022-02-20 23:46:42,195 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:42,196 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:42,355 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_2432 (Array Int Int))) (<= 0 (+ (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)) 12))) (forall ((v_ArrVal_2433 (Array Int Int)) (v_ArrVal_2432 (Array Int Int))) (let ((.cse0 (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12))) (<= (+ (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |c_ULTIMATE.start_main_~first~0#1.base|) .cse0) 16) (select |c_#length| (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2433) |c_ULTIMATE.start_main_~first~0#1.base|) .cse0)))))) is different from false [2022-02-20 23:46:42,376 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:42,376 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 24 treesize of output 25 [2022-02-20 23:46:42,381 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:42,382 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 43 [2022-02-20 23:46:42,384 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:46:42,432 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:42,432 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 45 treesize of output 46 [2022-02-20 23:46:42,438 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:42,438 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 35 treesize of output 36 [2022-02-20 23:46:42,440 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:42,443 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:42,444 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 21 [2022-02-20 23:46:42,446 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:42,453 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:42,454 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2022-02-20 23:46:42,563 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 8 treesize of output 6 [2022-02-20 23:46:42,699 INFO L290 TraceCheckUtils]: 41: Hoare triple {26261#(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); {26118#false} is VALID [2022-02-20 23:46:42,700 INFO L290 TraceCheckUtils]: 40: Hoare triple {26261#(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_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26261#(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:46:42,700 INFO L290 TraceCheckUtils]: 39: Hoare triple {26261#(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 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); {26261#(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:46:42,700 INFO L290 TraceCheckUtils]: 38: Hoare triple {26261#(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_~x~1#1.base < #StackHeapBarrier; {26261#(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:46:42,701 INFO L290 TraceCheckUtils]: 37: Hoare triple {26261#(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 0 == main_~x~1#1.offset; {26261#(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:46:42,701 INFO L290 TraceCheckUtils]: 36: Hoare triple {26261#(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_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {26261#(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:46:42,701 INFO L290 TraceCheckUtils]: 35: Hoare triple {26261#(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_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {26261#(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:46:42,702 INFO L290 TraceCheckUtils]: 34: Hoare triple {26261#(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|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {26261#(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:46:42,702 INFO L290 TraceCheckUtils]: 33: Hoare triple {26286#(and (<= (+ |ULTIMATE.start_main_#t~mem9#1.offset| 16) (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem9#1.offset| 12)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {26261#(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:46:42,703 INFO L290 TraceCheckUtils]: 32: Hoare triple {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {26286#(and (<= (+ |ULTIMATE.start_main_#t~mem9#1.offset| 16) (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) (<= 0 (+ |ULTIMATE.start_main_#t~mem9#1.offset| 12)))} is VALID [2022-02-20 23:46:42,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} is VALID [2022-02-20 23:46:42,703 INFO L290 TraceCheckUtils]: 30: Hoare triple {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} is VALID [2022-02-20 23:46:42,704 INFO L290 TraceCheckUtils]: 29: Hoare triple {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} is VALID [2022-02-20 23:46:42,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} is VALID [2022-02-20 23:46:42,705 INFO L290 TraceCheckUtils]: 27: Hoare triple {26306#(and (forall ((v_ArrVal_2433 (Array Int Int)) (v_ArrVal_2432 (Array Int Int))) (<= (+ 16 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2433) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))) (forall ((v_ArrVal_2432 (Array Int Int))) (<= 0 (+ 12 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))))} 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: L562-1 {26290#(and (<= (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 16) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))) (<= 0 (+ (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 12)))} is VALID [2022-02-20 23:46:42,706 INFO L290 TraceCheckUtils]: 26: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} 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: L562 {26306#(and (forall ((v_ArrVal_2433 (Array Int Int)) (v_ArrVal_2432 (Array Int Int))) (<= (+ 16 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))) (select |#length| (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2433) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))) (forall ((v_ArrVal_2432 (Array Int Int))) (<= 0 (+ 12 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2432) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))))} is VALID [2022-02-20 23:46:42,707 INFO L290 TraceCheckUtils]: 25: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,707 INFO L290 TraceCheckUtils]: 24: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,708 INFO L290 TraceCheckUtils]: 23: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,708 INFO L290 TraceCheckUtils]: 22: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,708 INFO L290 TraceCheckUtils]: 21: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,709 INFO L290 TraceCheckUtils]: 20: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} 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: L543 {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,710 INFO L290 TraceCheckUtils]: 19: Hoare triple {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} 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: L542 {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,710 INFO L290 TraceCheckUtils]: 18: Hoare triple {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |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: L541 {26310#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (<= (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) (select |#length| |ULTIMATE.start_main_~x~0#1.base|)) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:46:42,711 INFO L290 TraceCheckUtils]: 17: Hoare triple {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |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: L539-2 {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))} is VALID [2022-02-20 23:46:42,711 INFO L290 TraceCheckUtils]: 16: Hoare triple {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))} is VALID [2022-02-20 23:46:42,712 INFO L290 TraceCheckUtils]: 15: Hoare triple {26345#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_45| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_45|) 0)) (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_45|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26335#(and (<= 0 (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))} is VALID [2022-02-20 23:46:42,712 INFO L290 TraceCheckUtils]: 14: Hoare triple {26345#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_45| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_45|) 0)) (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_45|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26345#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_45| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_45|) 0)) (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_45|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))))} is VALID [2022-02-20 23:46:42,713 INFO L290 TraceCheckUtils]: 13: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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; {26345#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_45| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_45|) 0)) (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_45|)) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|))))} is VALID [2022-02-20 23:46:42,713 INFO L290 TraceCheckUtils]: 12: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,713 INFO L290 TraceCheckUtils]: 11: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,713 INFO L290 TraceCheckUtils]: 10: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,714 INFO L290 TraceCheckUtils]: 9: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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: L543 {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,714 INFO L290 TraceCheckUtils]: 7: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 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: L542 {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,714 INFO L290 TraceCheckUtils]: 6: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,715 INFO L290 TraceCheckUtils]: 5: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,715 INFO L290 TraceCheckUtils]: 4: Hoare triple {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,715 INFO L290 TraceCheckUtils]: 3: Hoare triple {26117#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {26352#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:46:42,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {26117#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {26117#true} is VALID [2022-02-20 23:46:42,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {26117#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {26117#true} is VALID [2022-02-20 23:46:42,716 INFO L290 TraceCheckUtils]: 0: Hoare triple {26117#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(12, 2); {26117#true} is VALID [2022-02-20 23:46:42,716 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 4 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:42,716 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2055570154] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:42,716 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:42,716 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 25 [2022-02-20 23:46:42,717 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1940617732] [2022-02-20 23:46:42,717 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:42,717 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:42,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:42,718 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:42,780 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:42,780 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-20 23:46:42,780 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:42,781 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-20 23:46:42,781 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=519, Unknown=1, NotChecked=46, Total=650 [2022-02-20 23:46:42,781 INFO L87 Difference]: Start difference. First operand 225 states and 256 transitions. Second operand has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:44,072 INFO L93 Difference]: Finished difference Result 308 states and 348 transitions. [2022-02-20 23:46:44,072 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:46:44,073 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:44,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:44,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 182 transitions. [2022-02-20 23:46:44,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 182 transitions. [2022-02-20 23:46:44,075 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 182 transitions. [2022-02-20 23:46:44,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 182 edges. 180 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:44,194 INFO L225 Difference]: With dead ends: 308 [2022-02-20 23:46:44,194 INFO L226 Difference]: Without dead ends: 308 [2022-02-20 23:46:44,195 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 78 SyntacticMatches, 3 SemanticMatches, 35 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 263 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=208, Invalid=1054, Unknown=2, NotChecked=68, Total=1332 [2022-02-20 23:46:44,195 INFO L933 BasicCegarLoop]: 64 mSDtfsCounter, 248 mSDsluCounter, 574 mSDsCounter, 0 mSdLazyCounter, 608 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 248 SdHoareTripleChecker+Valid, 638 SdHoareTripleChecker+Invalid, 869 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 608 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 209 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:44,195 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [248 Valid, 638 Invalid, 869 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 608 Invalid, 0 Unknown, 209 Unchecked, 0.4s Time] [2022-02-20 23:46:44,196 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 308 states. [2022-02-20 23:46:44,198 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 308 to 236. [2022-02-20 23:46:44,198 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:44,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 308 states. Second operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,198 INFO L74 IsIncluded]: Start isIncluded. First operand 308 states. Second operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,198 INFO L87 Difference]: Start difference. First operand 308 states. Second operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:44,202 INFO L93 Difference]: Finished difference Result 308 states and 348 transitions. [2022-02-20 23:46:44,202 INFO L276 IsEmpty]: Start isEmpty. Operand 308 states and 348 transitions. [2022-02-20 23:46:44,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:44,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:44,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 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 308 states. [2022-02-20 23:46:44,203 INFO L87 Difference]: Start difference. First operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 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 308 states. [2022-02-20 23:46:44,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:44,206 INFO L93 Difference]: Finished difference Result 308 states and 348 transitions. [2022-02-20 23:46:44,206 INFO L276 IsEmpty]: Start isEmpty. Operand 308 states and 348 transitions. [2022-02-20 23:46:44,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:44,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:44,206 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:44,206 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:44,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 236 states, 225 states have (on average 1.2177777777777778) internal successors, (274), 235 states have internal predecessors, (274), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 236 states to 236 states and 274 transitions. [2022-02-20 23:46:44,209 INFO L78 Accepts]: Start accepts. Automaton has 236 states and 274 transitions. Word has length 42 [2022-02-20 23:46:44,209 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:44,209 INFO L470 AbstractCegarLoop]: Abstraction has 236 states and 274 transitions. [2022-02-20 23:46:44,209 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 25 states have (on average 4.76) internal successors, (119), 26 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:44,209 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 274 transitions. [2022-02-20 23:46:44,209 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:46:44,209 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:44,210 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:46:44,227 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:46:44,413 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,SelfDestructingSolverStorable35 [2022-02-20 23:46:44,414 INFO L402 AbstractCegarLoop]: === Iteration 37 === Targeting ULTIMATE.startErr32REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:44,414 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:44,414 INFO L85 PathProgramCache]: Analyzing trace with hash -131950583, now seen corresponding path program 1 times [2022-02-20 23:46:44,414 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:44,414 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [202913081] [2022-02-20 23:46:44,414 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:44,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:44,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:44,797 INFO L290 TraceCheckUtils]: 0: Hoare triple {27577#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(12, 2); {27577#true} is VALID [2022-02-20 23:46:44,797 INFO L290 TraceCheckUtils]: 1: Hoare triple {27577#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {27577#true} is VALID [2022-02-20 23:46:44,797 INFO L290 TraceCheckUtils]: 2: Hoare triple {27577#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27577#true} is VALID [2022-02-20 23:46:44,798 INFO L290 TraceCheckUtils]: 3: Hoare triple {27577#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:44,798 INFO L290 TraceCheckUtils]: 4: Hoare triple {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:44,798 INFO L290 TraceCheckUtils]: 5: Hoare triple {27579#(= |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: L539-2 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:44,799 INFO L290 TraceCheckUtils]: 6: Hoare triple {27579#(= |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: L541 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:44,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {27579#(= |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: L542 {27580#(and (= |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|)))} is VALID [2022-02-20 23:46:44,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {27580#(and (= |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|)))} 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: L543 {27580#(and (= |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|)))} is VALID [2022-02-20 23:46:44,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {27580#(and (= |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|)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {27580#(and (= |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|)))} is VALID [2022-02-20 23:46:44,801 INFO L290 TraceCheckUtils]: 10: Hoare triple {27580#(and (= |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|)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {27580#(and (= |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|)))} is VALID [2022-02-20 23:46:44,802 INFO L290 TraceCheckUtils]: 11: Hoare triple {27580#(and (= |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|)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27580#(and (= |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|)))} is VALID [2022-02-20 23:46:44,802 INFO L290 TraceCheckUtils]: 12: Hoare triple {27580#(and (= |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|)))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {27581#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |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|)))} is VALID [2022-02-20 23:46:44,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {27581#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |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|)))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {27581#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |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|)))} is VALID [2022-02-20 23:46:44,803 INFO L290 TraceCheckUtils]: 14: Hoare triple {27581#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |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|)))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {27582#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:44,804 INFO L290 TraceCheckUtils]: 15: Hoare triple {27582#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| |ULTIMATE.start_main_~x~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {27583#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:44,804 INFO L290 TraceCheckUtils]: 16: Hoare triple {27583#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {27583#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:44,805 INFO L290 TraceCheckUtils]: 17: Hoare triple {27583#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {27584#(and (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|)))} is VALID [2022-02-20 23:46:44,806 INFO L290 TraceCheckUtils]: 18: Hoare triple {27584#(and (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (not (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_#t~mem8#1.base|)))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:44,806 INFO L290 TraceCheckUtils]: 19: Hoare triple {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:44,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |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: L553 {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:44,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)))} is VALID [2022-02-20 23:46:44,808 INFO L290 TraceCheckUtils]: 22: Hoare triple {27585#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1) (or (and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~y~0#1.base| |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: L554 {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:44,809 INFO L290 TraceCheckUtils]: 23: Hoare triple {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~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; {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:44,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:44,810 INFO L290 TraceCheckUtils]: 25: Hoare triple {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:46:44,810 INFO L290 TraceCheckUtils]: 26: Hoare triple {27586#(and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|) (= |ULTIMATE.start_main_~x~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;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; {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:44,811 INFO L290 TraceCheckUtils]: 27: Hoare triple {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:44,811 INFO L290 TraceCheckUtils]: 28: Hoare triple {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:46:44,812 INFO L290 TraceCheckUtils]: 29: Hoare triple {27587#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0)) 1)) (= (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|)) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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:46:44,812 INFO L290 TraceCheckUtils]: 30: Hoare triple {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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:46:44,813 INFO L290 TraceCheckUtils]: 31: Hoare triple {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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:46:44,814 INFO L290 TraceCheckUtils]: 32: Hoare triple {27588#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0)) 1) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |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~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {27589#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|))))} is VALID [2022-02-20 23:46:44,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {27589#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|))))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {27590#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (not (= |ULTIMATE.start_main_~y~1#1.offset| 0)) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|))))} is VALID [2022-02-20 23:46:44,815 INFO L290 TraceCheckUtils]: 34: Hoare triple {27590#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (not (= |ULTIMATE.start_main_~y~1#1.offset| 0)) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|) (and (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|)) 1) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |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; {27591#(or (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~z~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|)) 1)))} is VALID [2022-02-20 23:46:44,815 INFO L290 TraceCheckUtils]: 35: Hoare triple {27591#(or (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~z~0#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|)) 1)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {27592#(or (and (= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1) (not (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~z~0#1.base|))) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} is VALID [2022-02-20 23:46:44,816 INFO L290 TraceCheckUtils]: 36: Hoare triple {27592#(or (and (= (select |#valid| |ULTIMATE.start_main_#t~mem11#1.base|) 1) (not (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~z~0#1.base|))) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {27593#(or (and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} is VALID [2022-02-20 23:46:44,816 INFO L290 TraceCheckUtils]: 37: Hoare triple {27593#(or (and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} assume 0 == main_~z~0#1.offset; {27594#(and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} is VALID [2022-02-20 23:46:44,817 INFO L290 TraceCheckUtils]: 38: Hoare triple {27594#(and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} assume main_~z~0#1.base < #StackHeapBarrier; {27594#(and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} is VALID [2022-02-20 23:46:44,817 INFO L290 TraceCheckUtils]: 39: Hoare triple {27594#(and (not (= |ULTIMATE.start_main_~z~0#1.base| |ULTIMATE.start_main_~y~1#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1))} assume 0 == main_~z~0#1.base || 1 == #valid[main_~z~0#1.base];call ULTIMATE.dealloc(main_~z~0#1.base, main_~z~0#1.offset); {27595#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:44,817 INFO L290 TraceCheckUtils]: 40: Hoare triple {27595#(= (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; {27595#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} is VALID [2022-02-20 23:46:44,818 INFO L290 TraceCheckUtils]: 41: Hoare triple {27595#(= (select |#valid| |ULTIMATE.start_main_~y~1#1.base|) 1)} assume !(1 == #valid[main_~y~1#1.base]); {27578#false} is VALID [2022-02-20 23:46:44,818 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:44,818 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:44,818 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [202913081] [2022-02-20 23:46:44,818 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [202913081] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:44,818 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1787182877] [2022-02-20 23:46:44,818 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:44,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:44,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:44,820 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:46:44,821 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:46:45,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:45,003 INFO L263 TraceCheckSpWp]: Trace formula consists of 327 conjuncts, 79 conjunts are in the unsatisfiable core [2022-02-20 23:46:45,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:45,018 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:45,044 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:46:45,048 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:46:45,094 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,094 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:46:45,100 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,100 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:46:45,127 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,128 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:46:45,133 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,133 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:46:45,267 INFO L356 Elim1Store]: treesize reduction 17, result has 29.2 percent of original size [2022-02-20 23:46:45,271 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 23 treesize of output 18 [2022-02-20 23:46:45,286 INFO L356 Elim1Store]: treesize reduction 17, result has 29.2 percent of original size [2022-02-20 23:46:45,286 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 23 treesize of output 18 [2022-02-20 23:46:45,413 INFO L356 Elim1Store]: treesize reduction 29, result has 38.3 percent of original size [2022-02-20 23:46:45,414 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 39 treesize of output 48 [2022-02-20 23:46:45,428 INFO L356 Elim1Store]: treesize reduction 12, result has 64.7 percent of original size [2022-02-20 23:46:45,428 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 27 treesize of output 41 [2022-02-20 23:46:45,438 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 7 treesize of output 5 [2022-02-20 23:46:45,449 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 5 treesize of output 3 [2022-02-20 23:46:45,461 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 7 treesize of output 5 [2022-02-20 23:46:45,493 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:46:45,546 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,547 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 33 treesize of output 32 [2022-02-20 23:46:45,553 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:46:45,553 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 33 treesize of output 32 [2022-02-20 23:46:45,573 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 31 treesize of output 30 [2022-02-20 23:46:45,576 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 31 treesize of output 30 [2022-02-20 23:46:45,618 INFO L356 Elim1Store]: treesize reduction 13, result has 45.8 percent of original size [2022-02-20 23:46:45,619 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 31 treesize of output 34 [2022-02-20 23:46:45,628 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:46:45,628 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 30 treesize of output 40 [2022-02-20 23:46:46,009 INFO L356 Elim1Store]: treesize reduction 16, result has 51.5 percent of original size [2022-02-20 23:46:46,010 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 5 new quantified variables, introduced 5 case distinctions, treesize of input 67 treesize of output 57 [2022-02-20 23:46:46,033 INFO L356 Elim1Store]: treesize reduction 12, result has 58.6 percent of original size [2022-02-20 23:46:46,033 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 3 new quantified variables, introduced 3 case distinctions, treesize of input 30 treesize of output 34 [2022-02-20 23:46:46,261 INFO L290 TraceCheckUtils]: 0: Hoare triple {27577#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(12, 2); {27577#true} is VALID [2022-02-20 23:46:46,261 INFO L290 TraceCheckUtils]: 1: Hoare triple {27577#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {27577#true} is VALID [2022-02-20 23:46:46,261 INFO L290 TraceCheckUtils]: 2: Hoare triple {27577#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27577#true} is VALID [2022-02-20 23:46:46,262 INFO L290 TraceCheckUtils]: 3: Hoare triple {27577#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:46,262 INFO L290 TraceCheckUtils]: 4: Hoare triple {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:46,262 INFO L290 TraceCheckUtils]: 5: Hoare triple {27579#(= |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: L539-2 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:46,262 INFO L290 TraceCheckUtils]: 6: Hoare triple {27579#(= |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: L541 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:46,263 INFO L290 TraceCheckUtils]: 7: Hoare triple {27579#(= |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: L542 {27620#(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) (= |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:46:46,264 INFO L290 TraceCheckUtils]: 8: Hoare triple {27620#(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) (= |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: L543 {27620#(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) (= |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:46:46,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {27620#(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) (= |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(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {27620#(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) (= |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:46:46,265 INFO L290 TraceCheckUtils]: 10: Hoare triple {27620#(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) (= |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; {27620#(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) (= |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:46:46,265 INFO L290 TraceCheckUtils]: 11: Hoare triple {27620#(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) (= |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27620#(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) (= |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:46:46,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {27620#(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) (= |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 !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {27636#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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) (= |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:46:46,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {27636#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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) (= |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); {27636#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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) (= |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:46:46,266 INFO L290 TraceCheckUtils]: 14: Hoare triple {27636#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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) (= |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~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {27643#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_#t~mem7#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| (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.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:46:46,267 INFO L290 TraceCheckUtils]: 15: Hoare triple {27643#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) |ULTIMATE.start_main_#t~mem7#1.offset|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_#t~mem7#1.base| (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.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~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {27647#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:46,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {27647#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {27647#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:46,268 INFO L290 TraceCheckUtils]: 17: Hoare triple {27647#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {27654#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_#t~mem8#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} is VALID [2022-02-20 23:46:46,269 INFO L290 TraceCheckUtils]: 18: Hoare triple {27654#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_#t~mem8#1.base|) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |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|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))} SUMMARY for call write~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, main_#t~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:46,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:46,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |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: L553 {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:46,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {27658#(and (= |ULTIMATE.start_main_~y~0#1.offset| 0) (or (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) |ULTIMATE.start_main_~x~0#1.base|))) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {27668#(and (or (and (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |ULTIMATE.start_main_~x~0#1.offset| 0))} is VALID [2022-02-20 23:46:46,272 INFO L290 TraceCheckUtils]: 22: Hoare triple {27668#(and (or (and (= |ULTIMATE.start_main_~x~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (= |ULTIMATE.start_main_~y~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= |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: L554 {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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:46:46,272 INFO L290 TraceCheckUtils]: 23: Hoare triple {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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; {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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:46:46,273 INFO L290 TraceCheckUtils]: 24: Hoare triple {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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 -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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:46:46,273 INFO L290 TraceCheckUtils]: 25: Hoare triple {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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 !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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:46:46,274 INFO L290 TraceCheckUtils]: 26: Hoare triple {27672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (= |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; {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (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:46:46,275 INFO L290 TraceCheckUtils]: 27: Hoare triple {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (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:46:46,275 INFO L290 TraceCheckUtils]: 28: Hoare triple {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0))) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (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:46:46,276 INFO L290 TraceCheckUtils]: 29: Hoare triple {27685#(and (or (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0) 0) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 0)) 0))) (= |ULTIMATE.start_main_~first~0#1.base| (select (select |#memory_$Pointer$.base| |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);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:46,276 INFO L290 TraceCheckUtils]: 30: Hoare triple {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:46,277 INFO L290 TraceCheckUtils]: 31: Hoare triple {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} is VALID [2022-02-20 23:46:46,277 INFO L290 TraceCheckUtils]: 32: Hoare triple {27695#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {27705#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_#t~mem10#1.offset|))} is VALID [2022-02-20 23:46:46,278 INFO L290 TraceCheckUtils]: 33: Hoare triple {27705#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_#t~mem10#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_#t~mem10#1.offset|))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {27709#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~y~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_~y~1#1.base|))} is VALID [2022-02-20 23:46:46,279 INFO L290 TraceCheckUtils]: 34: Hoare triple {27709#(and (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~y~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_~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; {27713#(and (= |ULTIMATE.start_main_~y~1#1.offset| |ULTIMATE.start_main_~z~0#1.offset|) (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~y~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_~y~1#1.base|) (or (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|))))} is VALID [2022-02-20 23:46:46,279 INFO L290 TraceCheckUtils]: 35: Hoare triple {27713#(and (= |ULTIMATE.start_main_~y~1#1.offset| |ULTIMATE.start_main_~z~0#1.offset|) (or (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) |ULTIMATE.start_main_~x~1#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0)) 0) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)) (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) |ULTIMATE.start_main_~y~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_~y~1#1.base|) (or (not (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~x~1#1.offset| |ULTIMATE.start_main_~y~1#1.offset|))))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {27717#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem11#1.offset| 0)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0))))} is VALID [2022-02-20 23:46:46,280 INFO L290 TraceCheckUtils]: 36: Hoare triple {27717#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem11#1.offset| 0)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0))))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {27721#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0))))} is VALID [2022-02-20 23:46:46,280 INFO L290 TraceCheckUtils]: 37: Hoare triple {27721#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (or (and (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0))))} assume 0 == main_~z~0#1.offset; {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:46,280 INFO L290 TraceCheckUtils]: 38: Hoare triple {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} assume main_~z~0#1.base < #StackHeapBarrier; {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:46,281 INFO L290 TraceCheckUtils]: 39: Hoare triple {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} assume 0 == main_~z~0#1.base || 1 == #valid[main_~z~0#1.base];call ULTIMATE.dealloc(main_~z~0#1.base, main_~z~0#1.offset); {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.base| |ULTIMATE.start_main_~x~1#1.base|))} is VALID [2022-02-20 23:46:46,281 INFO L290 TraceCheckUtils]: 40: Hoare triple {27725#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (= |ULTIMATE.start_main_~y~1#1.offset| 0) (= |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; {27578#false} is VALID [2022-02-20 23:46:46,281 INFO L290 TraceCheckUtils]: 41: Hoare triple {27578#false} assume !(1 == #valid[main_~y~1#1.base]); {27578#false} is VALID [2022-02-20 23:46:46,282 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:46:46,282 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:46,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 6 treesize of output 4 [2022-02-20 23:46:46,764 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 6 treesize of output 4 [2022-02-20 23:46:46,923 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 6 treesize of output 4 [2022-02-20 23:46:47,095 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 6 treesize of output 4 [2022-02-20 23:46:47,175 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 6 treesize of output 4 [2022-02-20 23:46:47,315 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 6 treesize of output 4 [2022-02-20 23:46:47,491 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 6 treesize of output 4 [2022-02-20 23:46:47,657 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 6 treesize of output 4 [2022-02-20 23:46:47,945 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 6 treesize of output 4 [2022-02-20 23:46:48,247 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 6 treesize of output 4 [2022-02-20 23:46:48,466 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 6 treesize of output 4 [2022-02-20 23:46:48,782 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 6 treesize of output 4 [2022-02-20 23:46:48,899 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 6 treesize of output 4 [2022-02-20 23:46:49,038 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 6 treesize of output 4 [2022-02-20 23:46:49,635 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 6 treesize of output 4 [2022-02-20 23:46:50,157 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,157 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 2 case distinctions, treesize of input 545 treesize of output 489 [2022-02-20 23:46:50,167 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,168 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,171 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,172 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,172 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,178 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,178 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 3 case distinctions, treesize of input 459 treesize of output 468 [2022-02-20 23:46:50,187 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,187 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 2 case distinctions, treesize of input 468 treesize of output 323 [2022-02-20 23:46:50,201 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,202 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,209 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,209 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,209 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,222 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,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, 3 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 3 case distinctions, treesize of input 173 treesize of output 182 [2022-02-20 23:46:50,233 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,234 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,234 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,292 INFO L356 Elim1Store]: treesize reduction 63, result has 49.2 percent of original size [2022-02-20 23:46:50,292 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 7 case distinctions, treesize of input 182 treesize of output 210 [2022-02-20 23:46:50,324 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,325 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 247 treesize of output 245 [2022-02-20 23:46:50,339 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:46:50,340 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 251 treesize of output 248 [2022-02-20 23:46:50,391 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 134 treesize of output 132 [2022-02-20 23:46:50,440 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,440 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 2 new quantified variables, introduced 2 case distinctions, treesize of input 141 treesize of output 121 [2022-02-20 23:46:50,608 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:50,609 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 404 treesize of output 342 [2022-02-20 23:46:50,680 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:46:50,706 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 238 treesize of output 228 [2022-02-20 23:46:50,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, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 6 [2022-02-20 23:46:50,922 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 38 [2022-02-20 23:46:50,937 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 6 treesize of output 4 [2022-02-20 23:46:50,940 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 6 treesize of output 4 [2022-02-20 23:46:50,954 INFO L290 TraceCheckUtils]: 41: Hoare triple {27578#false} assume !(1 == #valid[main_~y~1#1.base]); {27578#false} is VALID [2022-02-20 23:46:50,955 INFO L290 TraceCheckUtils]: 40: Hoare triple {27741#(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; {27578#false} is VALID [2022-02-20 23:46:50,955 INFO L290 TraceCheckUtils]: 39: Hoare triple {27741#(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 0 == main_~z~0#1.base || 1 == #valid[main_~z~0#1.base];call ULTIMATE.dealloc(main_~z~0#1.base, main_~z~0#1.offset); {27741#(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:46:50,956 INFO L290 TraceCheckUtils]: 38: Hoare triple {27741#(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_~z~0#1.base < #StackHeapBarrier; {27741#(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:46:50,956 INFO L290 TraceCheckUtils]: 37: Hoare triple {27751#(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|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} assume 0 == main_~z~0#1.offset; {27741#(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:46:50,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {27755#(or (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)) (and (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem11#1.offset| |ULTIMATE.start_main_~x~1#1.offset|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem11#1.base, main_#t~mem11#1.offset;havoc main_#t~mem11#1.base, main_#t~mem11#1.offset; {27751#(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|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} is VALID [2022-02-20 23:46:50,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {27759#(or (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} SUMMARY for call main_#t~mem11#1.base, main_#t~mem11#1.offset := read~$Pointer$(main_~y~1#1.base, main_~y~1#1.offset, 4); srcloc: L573 {27755#(or (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)) (and (= |ULTIMATE.start_main_#t~mem11#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_#t~mem11#1.offset| |ULTIMATE.start_main_~x~1#1.offset|)))} is VALID [2022-02-20 23:46:50,958 INFO L290 TraceCheckUtils]: 34: Hoare triple {27763#(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|)) (not (= |ULTIMATE.start_main_~y~1#1.offset| 0)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |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; {27759#(or (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)) (not (= |ULTIMATE.start_main_~z~0#1.offset| 0)))} is VALID [2022-02-20 23:46:50,958 INFO L290 TraceCheckUtils]: 33: Hoare triple {27767#(or (not (= |ULTIMATE.start_main_#t~mem10#1.offset| 0)) (and (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (and (= |ULTIMATE.start_main_~x~1#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base|) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {27763#(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|)) (not (= |ULTIMATE.start_main_~y~1#1.offset| 0)) (and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~1#1.base|) |ULTIMATE.start_main_~y~1#1.offset|) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:50,959 INFO L290 TraceCheckUtils]: 32: Hoare triple {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {27767#(or (not (= |ULTIMATE.start_main_#t~mem10#1.offset| 0)) (and (= |ULTIMATE.start_main_#t~mem10#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~x~1#1.offset| 0)) (and (= |ULTIMATE.start_main_~x~1#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem10#1.base|) 0)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem10#1.base|) 0) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:50,959 INFO L290 TraceCheckUtils]: 31: Hoare triple {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:50,960 INFO L290 TraceCheckUtils]: 30: Hoare triple {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:50,961 INFO L290 TraceCheckUtils]: 29: Hoare triple {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {27771#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.offset|) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~1#1.base|) |ULTIMATE.start_main_~x~1#1.offset|)) 0) |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:46:50,961 INFO L290 TraceCheckUtils]: 28: Hoare triple {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:50,962 INFO L290 TraceCheckUtils]: 27: Hoare triple {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:50,962 INFO L290 TraceCheckUtils]: 26: Hoare triple {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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; {27781#(or (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|) 0)) (and (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) |ULTIMATE.start_main_~first~0#1.offset|)) 0) |ULTIMATE.start_main_~first~0#1.offset|)))} is VALID [2022-02-20 23:46:50,963 INFO L290 TraceCheckUtils]: 25: Hoare triple {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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:46:50,963 INFO L290 TraceCheckUtils]: 24: Hoare triple {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) 0)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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:46:50,964 INFO L290 TraceCheckUtils]: 23: Hoare triple {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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; {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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:46:50,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {27804#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0)) (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (select v_ArrVal_2590 |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: L554 {27791#(or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0)) (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|)) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (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:46:50,966 INFO L290 TraceCheckUtils]: 21: Hoare triple {27808#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2589 Int)) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2587 Int)) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0)))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} SUMMARY for call write~int(0, main_~y~0#1.base, 8 + main_~y~0#1.offset, 4); srcloc: L553-1 {27804#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0)) (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is VALID [2022-02-20 23:46:50,970 INFO L290 TraceCheckUtils]: 20: Hoare triple {27812#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int)) (= (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int)) (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |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: L553 {27808#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2589 Int)) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2587 Int)) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0)))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is VALID [2022-02-20 23:46:50,973 WARN L290 TraceCheckUtils]: 19: Hoare triple {27812#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int)) (= (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int)) (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} havoc main_#t~mem8#1.base, main_#t~mem8#1.offset; {27812#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int)) (= (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int)) (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:50,980 WARN L290 TraceCheckUtils]: 18: Hoare triple {27819#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 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~mem8#1.base, 4 + main_#t~mem8#1.offset, 4); srcloc: L552-1 {27812#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int)) (= (select (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int)) (= (select (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:50,984 WARN L290 TraceCheckUtils]: 17: Hoare triple {27823#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)))))} SUMMARY for call main_#t~mem8#1.base, main_#t~mem8#1.offset := read~$Pointer$(main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L552 {27819#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~mem8#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)))))} is UNKNOWN [2022-02-20 23:46:50,989 WARN L290 TraceCheckUtils]: 16: Hoare triple {27823#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)))))} havoc main_#t~mem7#1.base, main_#t~mem7#1.offset; {27823#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)))))} is UNKNOWN [2022-02-20 23:46:50,996 WARN L290 TraceCheckUtils]: 15: Hoare triple {27830#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.offset|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.offset|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} SUMMARY for call write~$Pointer$(main_#t~mem7#1.base, main_#t~mem7#1.offset, main_~y~0#1.base, main_~y~0#1.offset, 4); srcloc: L551 {27823#(forall ((v_ArrVal_2590 (Array Int Int))) (or (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0)) (and (forall ((v_ArrVal_2583 Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)))))} is UNKNOWN [2022-02-20 23:46:51,001 WARN L290 TraceCheckUtils]: 14: Hoare triple {27834#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} SUMMARY for call main_#t~mem7#1.base, main_#t~mem7#1.offset := read~$Pointer$(main_~x~0#1.base, main_~x~0#1.offset, 4); srcloc: L549-2 {27830#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.base|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.offset|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| |ULTIMATE.start_main_#t~mem7#1.offset|)) |ULTIMATE.start_main_#t~mem7#1.base| v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:51,005 WARN L290 TraceCheckUtils]: 13: Hoare triple {27834#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} assume !(main_~y~0#1.base == 0 && main_~y~0#1.offset == 0); {27834#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:51,009 WARN L290 TraceCheckUtils]: 12: Hoare triple {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} assume !!(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1;call main_#t~malloc6#1.base, main_#t~malloc6#1.offset := #Ultimate.allocOnHeap(12);main_~y~0#1.base, main_~y~0#1.offset := main_#t~malloc6#1.base, main_#t~malloc6#1.offset;havoc main_#t~malloc6#1.base, main_#t~malloc6#1.offset; {27834#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.offset| (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2583) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) |ULTIMATE.start_main_~y~0#1.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) (+ |ULTIMATE.start_main_~y~0#1.offset| 4) v_ArrVal_2585) (+ 8 |ULTIMATE.start_main_~y~0#1.offset|) v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:51,010 INFO L290 TraceCheckUtils]: 11: Hoare triple {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is VALID [2022-02-20 23:46:51,010 INFO L290 TraceCheckUtils]: 10: Hoare triple {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is VALID [2022-02-20 23:46:51,020 WARN L290 TraceCheckUtils]: 9: Hoare triple {27851#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2573 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (forall ((v_ArrVal_2573 Int) (v_ArrVal_2583 Int) (v_ArrVal_2575 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (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_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {27841#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= |ULTIMATE.start_main_~x~0#1.base| (select (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0))) (forall ((v_ArrVal_2583 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base| (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~y~0#1.base|) 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|))) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:51,038 WARN L290 TraceCheckUtils]: 8: Hoare triple {27855#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2571 Int) (v_ArrVal_2570 Int) (v_ArrVal_2573 Int) (v_ArrVal_2583 Int) (v_ArrVal_2575 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2570 Int) (v_ArrVal_2573 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |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: L543 {27851#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2573 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|)) (forall ((v_ArrVal_2573 Int) (v_ArrVal_2583 Int) (v_ArrVal_2575 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (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_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (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_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is UNKNOWN [2022-02-20 23:46:51,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {27579#(= |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: L542 {27855#(forall ((v_ArrVal_2590 (Array Int Int))) (or (and (forall ((v_ArrVal_2571 Int) (v_ArrVal_2570 Int) (v_ArrVal_2573 Int) (v_ArrVal_2583 Int) (v_ArrVal_2575 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2589 Int) (v_ArrVal_2580 (Array Int Int))) (= (select (select (store (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2571) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2575) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2580) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2583) 8 v_ArrVal_2589)) |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2590) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.offset|)) (forall ((v_ArrVal_2570 Int) (v_ArrVal_2573 Int) (|ULTIMATE.start_main_~y~0#1.base| Int) (v_ArrVal_2585 Int) (v_ArrVal_2587 Int) (v_ArrVal_2581 (Array Int Int))) (= (select (select (store (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base| (store (store (select (store (store (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base| (store (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573)) |ULTIMATE.start_main_~y~0#1.base|) 0 (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|))) (select (store (store (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2570) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2573) |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2581) |ULTIMATE.start_main_~y~0#1.base|) 4 v_ArrVal_2585) 8 v_ArrVal_2587)) |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| |ULTIMATE.start_main_~y~0#1.base|)) |ULTIMATE.start_main_~y~0#1.base|) 0) |ULTIMATE.start_main_~x~0#1.base|))) (not (= (select v_ArrVal_2590 |ULTIMATE.start_main_~x~0#1.offset|) 0))))} is VALID [2022-02-20 23:46:51,041 INFO L290 TraceCheckUtils]: 6: Hoare triple {27579#(= |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: L541 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:51,041 INFO L290 TraceCheckUtils]: 5: Hoare triple {27579#(= |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: L539-2 {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:51,042 INFO L290 TraceCheckUtils]: 4: Hoare triple {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:51,042 INFO L290 TraceCheckUtils]: 3: Hoare triple {27577#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {27579#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:51,042 INFO L290 TraceCheckUtils]: 2: Hoare triple {27577#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {27577#true} is VALID [2022-02-20 23:46:51,042 INFO L290 TraceCheckUtils]: 1: Hoare triple {27577#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {27577#true} is VALID [2022-02-20 23:46:51,042 INFO L290 TraceCheckUtils]: 0: Hoare triple {27577#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(12, 2); {27577#true} is VALID [2022-02-20 23:46:51,043 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:51,043 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1787182877] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:51,043 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:51,043 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 19, 22] total 54 [2022-02-20 23:46:51,043 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [610968577] [2022-02-20 23:46:51,043 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:51,043 INFO L78 Accepts]: Start accepts. Automaton has has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:51,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:51,044 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:51,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 99 inductive. 0 not inductive. 12 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:51,222 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 54 states [2022-02-20 23:46:51,222 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:51,223 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 54 interpolants. [2022-02-20 23:46:51,223 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=218, Invalid=2171, Unknown=473, NotChecked=0, Total=2862 [2022-02-20 23:46:51,223 INFO L87 Difference]: Start difference. First operand 236 states and 274 transitions. Second operand has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:57,179 INFO L93 Difference]: Finished difference Result 484 states and 582 transitions. [2022-02-20 23:46:57,179 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2022-02-20 23:46:57,179 INFO L78 Accepts]: Start accepts. Automaton has has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:46:57,179 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:46:57,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 222 transitions. [2022-02-20 23:46:57,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 222 transitions. [2022-02-20 23:46:57,184 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 48 states and 222 transitions. [2022-02-20 23:46:57,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 222 edges. 222 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:46:57,322 INFO L225 Difference]: With dead ends: 484 [2022-02-20 23:46:57,322 INFO L226 Difference]: Without dead ends: 484 [2022-02-20 23:46:57,323 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 156 GetRequests, 63 SyntacticMatches, 1 SemanticMatches, 92 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1872 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=887, Invalid=7020, Unknown=835, NotChecked=0, Total=8742 [2022-02-20 23:46:57,324 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 381 mSDsluCounter, 1402 mSDsCounter, 0 mSdLazyCounter, 1619 mSolverCounterSat, 126 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 381 SdHoareTripleChecker+Valid, 1455 SdHoareTripleChecker+Invalid, 2484 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 126 IncrementalHoareTripleChecker+Valid, 1619 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 739 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:46:57,325 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [381 Valid, 1455 Invalid, 2484 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [126 Valid, 1619 Invalid, 0 Unknown, 739 Unchecked, 1.3s Time] [2022-02-20 23:46:57,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 484 states. [2022-02-20 23:46:57,346 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 484 to 246. [2022-02-20 23:46:57,346 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:46:57,346 INFO L82 GeneralOperation]: Start isEquivalent. First operand 484 states. Second operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,346 INFO L74 IsIncluded]: Start isIncluded. First operand 484 states. Second operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,347 INFO L87 Difference]: Start difference. First operand 484 states. Second operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:57,356 INFO L93 Difference]: Finished difference Result 484 states and 582 transitions. [2022-02-20 23:46:57,356 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 582 transitions. [2022-02-20 23:46:57,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:57,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:57,357 INFO L74 IsIncluded]: Start isIncluded. First operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 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 484 states. [2022-02-20 23:46:57,357 INFO L87 Difference]: Start difference. First operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 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 484 states. [2022-02-20 23:46:57,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:46:57,364 INFO L93 Difference]: Finished difference Result 484 states and 582 transitions. [2022-02-20 23:46:57,364 INFO L276 IsEmpty]: Start isEmpty. Operand 484 states and 582 transitions. [2022-02-20 23:46:57,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:46:57,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:46:57,365 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:46:57,365 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:46:57,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 246 states, 235 states have (on average 1.2085106382978723) internal successors, (284), 245 states have internal predecessors, (284), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 246 states to 246 states and 284 transitions. [2022-02-20 23:46:57,367 INFO L78 Accepts]: Start accepts. Automaton has 246 states and 284 transitions. Word has length 42 [2022-02-20 23:46:57,368 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:46:57,368 INFO L470 AbstractCegarLoop]: Abstraction has 246 states and 284 transitions. [2022-02-20 23:46:57,368 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 54 states, 54 states have (on average 2.0555555555555554) internal successors, (111), 54 states have internal predecessors, (111), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:57,369 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 284 transitions. [2022-02-20 23:46:57,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 23:46:57,369 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:46:57,369 INFO L514 BasicCegarLoop]: trace histogram [3, 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, 1, 1, 1, 1, 1] [2022-02-20 23:46:57,386 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:46:57,583 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable36 [2022-02-20 23:46:57,584 INFO L402 AbstractCegarLoop]: === Iteration 38 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:46:57,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:46:57,584 INFO L85 PathProgramCache]: Analyzing trace with hash 1041969739, now seen corresponding path program 1 times [2022-02-20 23:46:57,584 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:46:57,584 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2025390680] [2022-02-20 23:46:57,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:57,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:46:57,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:57,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {29669#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(12, 2); {29669#true} is VALID [2022-02-20 23:46:57,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {29669#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {29669#true} is VALID [2022-02-20 23:46:57,741 INFO L290 TraceCheckUtils]: 2: Hoare triple {29669#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29669#true} is VALID [2022-02-20 23:46:57,741 INFO L290 TraceCheckUtils]: 3: Hoare triple {29669#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29671#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:57,742 INFO L290 TraceCheckUtils]: 4: Hoare triple {29671#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29671#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:46:57,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {29671#(= |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: L539-2 {29672#(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:46:57,743 INFO L290 TraceCheckUtils]: 6: Hoare triple {29672#(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: L541 {29672#(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:46:57,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {29672#(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: L542 {29672#(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:46:57,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {29672#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {29672#(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:46:57,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29672#(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:46:57,745 INFO L290 TraceCheckUtils]: 10: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~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; {29672#(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:46:57,745 INFO L290 TraceCheckUtils]: 11: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29672#(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:46:57,746 INFO L290 TraceCheckUtils]: 12: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29672#(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:46:57,746 INFO L290 TraceCheckUtils]: 13: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~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;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; {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,747 INFO L290 TraceCheckUtils]: 14: Hoare triple {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,747 INFO L290 TraceCheckUtils]: 15: Hoare triple {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,749 INFO L290 TraceCheckUtils]: 18: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,749 INFO L290 TraceCheckUtils]: 19: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L542 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L543 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,752 INFO L290 TraceCheckUtils]: 23: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,753 INFO L290 TraceCheckUtils]: 24: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,753 INFO L290 TraceCheckUtils]: 25: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:57,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} 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: L562 {29675#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {29675#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} 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: L562-1 {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,756 INFO L290 TraceCheckUtils]: 29: Hoare triple {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,756 INFO L290 TraceCheckUtils]: 30: Hoare triple {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,757 INFO L290 TraceCheckUtils]: 31: Hoare triple {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:57,757 INFO L290 TraceCheckUtils]: 32: Hoare triple {29676#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:57,758 INFO L290 TraceCheckUtils]: 33: Hoare triple {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,758 INFO L290 TraceCheckUtils]: 34: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,759 INFO L290 TraceCheckUtils]: 35: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,759 INFO L290 TraceCheckUtils]: 36: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,759 INFO L290 TraceCheckUtils]: 37: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume 0 == main_~x~1#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,760 INFO L290 TraceCheckUtils]: 39: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 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); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:57,760 INFO L290 TraceCheckUtils]: 40: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {29670#false} is VALID [2022-02-20 23:46:57,760 INFO L290 TraceCheckUtils]: 41: Hoare triple {29670#false} main_#res#1 := 0; {29670#false} is VALID [2022-02-20 23:46:57,760 INFO L290 TraceCheckUtils]: 42: Hoare triple {29670#false} assume !(#valid == main_old_#valid#1); {29670#false} is VALID [2022-02-20 23:46:57,760 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:57,761 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:46:57,761 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2025390680] [2022-02-20 23:46:57,761 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2025390680] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:46:57,761 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1049392346] [2022-02-20 23:46:57,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:46:57,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:46:57,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:46:57,776 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:46:57,777 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:46:57,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:57,959 INFO L263 TraceCheckSpWp]: Trace formula consists of 338 conjuncts, 29 conjunts are in the unsatisfiable core [2022-02-20 23:46:57,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:46:57,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:46:57,980 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:46:58,073 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:46:58,073 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:46:58,255 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:46:58,288 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:46:58,288 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 27 treesize of output 28 [2022-02-20 23:46:58,386 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 24 treesize of output 12 [2022-02-20 23:46:58,425 INFO L290 TraceCheckUtils]: 0: Hoare triple {29669#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(12, 2); {29669#true} is VALID [2022-02-20 23:46:58,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {29669#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {29669#true} is VALID [2022-02-20 23:46:58,425 INFO L290 TraceCheckUtils]: 2: Hoare triple {29669#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29669#true} is VALID [2022-02-20 23:46:58,426 INFO L290 TraceCheckUtils]: 3: Hoare triple {29669#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29672#(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:46:58,426 INFO L290 TraceCheckUtils]: 4: Hoare triple {29672#(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); {29672#(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:46:58,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {29672#(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: L539-2 {29672#(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:46:58,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {29672#(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: L541 {29672#(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:46:58,428 INFO L290 TraceCheckUtils]: 7: Hoare triple {29672#(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: L542 {29672#(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:46:58,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {29672#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {29672#(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:46:58,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29672#(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:46:58,430 INFO L290 TraceCheckUtils]: 10: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~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; {29672#(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:46:58,430 INFO L290 TraceCheckUtils]: 11: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29672#(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:46:58,431 INFO L290 TraceCheckUtils]: 12: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29672#(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:46:58,431 INFO L290 TraceCheckUtils]: 13: Hoare triple {29672#(and (= |ULTIMATE.start_main_~x~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;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; {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:58,432 INFO L290 TraceCheckUtils]: 14: Hoare triple {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:46:58,432 INFO L290 TraceCheckUtils]: 15: Hoare triple {29673#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,435 INFO L290 TraceCheckUtils]: 19: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L542 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,435 INFO L290 TraceCheckUtils]: 20: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L543 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,436 INFO L290 TraceCheckUtils]: 21: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,437 INFO L290 TraceCheckUtils]: 23: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,437 INFO L290 TraceCheckUtils]: 24: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,438 INFO L290 TraceCheckUtils]: 25: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,439 INFO L290 TraceCheckUtils]: 26: Hoare triple {29674#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} 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: L562 {29760#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~x~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,440 INFO L290 TraceCheckUtils]: 27: Hoare triple {29760#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~x~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} 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: L562-1 {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:58,440 INFO L290 TraceCheckUtils]: 28: Hoare triple {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |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; {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:58,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:58,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:58,442 INFO L290 TraceCheckUtils]: 31: Hoare triple {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} is VALID [2022-02-20 23:46:58,443 INFO L290 TraceCheckUtils]: 32: Hoare triple {29764#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) 0)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) 12) |ULTIMATE.start_main_~first~0#1.base|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:58,443 INFO L290 TraceCheckUtils]: 33: Hoare triple {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,443 INFO L290 TraceCheckUtils]: 34: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,444 INFO L290 TraceCheckUtils]: 35: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,444 INFO L290 TraceCheckUtils]: 36: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,444 INFO L290 TraceCheckUtils]: 37: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume 0 == main_~x~1#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,445 INFO L290 TraceCheckUtils]: 38: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,445 INFO L290 TraceCheckUtils]: 39: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 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); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,446 INFO L290 TraceCheckUtils]: 40: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {29670#false} is VALID [2022-02-20 23:46:58,446 INFO L290 TraceCheckUtils]: 41: Hoare triple {29670#false} main_#res#1 := 0; {29670#false} is VALID [2022-02-20 23:46:58,446 INFO L290 TraceCheckUtils]: 42: Hoare triple {29670#false} assume !(#valid == main_old_#valid#1); {29670#false} is VALID [2022-02-20 23:46:58,446 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:58,446 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:46:58,499 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2750 (Array Int Int))) (not (= (select (select (store |c_#memory_$Pointer$.base| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2750) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)) 0))) is different from false [2022-02-20 23:46:58,506 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:58,506 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:46:58,512 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:46:58,512 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 39 treesize of output 42 [2022-02-20 23:46:58,515 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 18 [2022-02-20 23:46:58,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {29670#false} assume !(#valid == main_old_#valid#1); {29670#false} is VALID [2022-02-20 23:46:58,846 INFO L290 TraceCheckUtils]: 41: Hoare triple {29670#false} main_#res#1 := 0; {29670#false} is VALID [2022-02-20 23:46:58,846 INFO L290 TraceCheckUtils]: 40: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0); {29670#false} is VALID [2022-02-20 23:46:58,847 INFO L290 TraceCheckUtils]: 39: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 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); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,847 INFO L290 TraceCheckUtils]: 38: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume main_~x~1#1.base < #StackHeapBarrier; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,847 INFO L290 TraceCheckUtils]: 37: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume 0 == main_~x~1#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,847 INFO L290 TraceCheckUtils]: 36: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,848 INFO L290 TraceCheckUtils]: 35: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,848 INFO L290 TraceCheckUtils]: 34: Hoare triple {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,848 INFO L290 TraceCheckUtils]: 33: Hoare triple {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {29678#(not (= |ULTIMATE.start_main_~first~0#1.base| 0))} is VALID [2022-02-20 23:46:58,849 INFO L290 TraceCheckUtils]: 32: Hoare triple {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {29677#(not (= |ULTIMATE.start_main_#t~mem9#1.base| 0))} is VALID [2022-02-20 23:46:58,849 INFO L290 TraceCheckUtils]: 31: Hoare triple {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:58,850 INFO L290 TraceCheckUtils]: 30: Hoare triple {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:58,850 INFO L290 TraceCheckUtils]: 29: Hoare triple {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:58,851 INFO L290 TraceCheckUtils]: 28: Hoare triple {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:58,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {29856#(forall ((v_ArrVal_2750 (Array Int Int))) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2750) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)))} 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: L562-1 {29840#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0))} is VALID [2022-02-20 23:46:58,852 INFO L290 TraceCheckUtils]: 26: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} 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: L562 {29856#(forall ((v_ArrVal_2750 (Array Int Int))) (not (= (select (select (store |#memory_$Pointer$.base| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2750) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0)))} is VALID [2022-02-20 23:46:58,853 INFO L290 TraceCheckUtils]: 25: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,854 INFO L290 TraceCheckUtils]: 23: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,854 INFO L290 TraceCheckUtils]: 22: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,855 INFO L290 TraceCheckUtils]: 21: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,856 INFO L290 TraceCheckUtils]: 20: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L543 {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,857 INFO L290 TraceCheckUtils]: 19: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 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: L542 {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,857 INFO L290 TraceCheckUtils]: 18: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,858 INFO L290 TraceCheckUtils]: 17: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,858 INFO L290 TraceCheckUtils]: 16: Hoare triple {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,859 INFO L290 TraceCheckUtils]: 15: Hoare triple {29894#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_48| Int)) (or (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_48|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_48|) 0)) (= |v_ULTIMATE.start_main_~x~0#1.base_48| 0)))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29860#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (not (= |ULTIMATE.start_main_~x~0#1.base| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (not (= |ULTIMATE.start_main_~x~0#1.base| 0)))} is VALID [2022-02-20 23:46:58,860 INFO L290 TraceCheckUtils]: 14: Hoare triple {29894#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_48| Int)) (or (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_48|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_48|) 0)) (= |v_ULTIMATE.start_main_~x~0#1.base_48| 0)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29894#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_48| Int)) (or (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_48|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_48|) 0)) (= |v_ULTIMATE.start_main_~x~0#1.base_48| 0)))} is VALID [2022-02-20 23:46:58,861 INFO L290 TraceCheckUtils]: 13: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 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; {29894#(forall ((|v_ULTIMATE.start_main_~x~0#1.base_48| Int)) (or (and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= |ULTIMATE.start_main_~last~0#1.offset| |ULTIMATE.start_main_~first~0#1.offset|) (not (= |ULTIMATE.start_main_~first~0#1.base| |v_ULTIMATE.start_main_~x~0#1.base_48|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_48|) 0)) (= |v_ULTIMATE.start_main_~x~0#1.base_48| 0)))} is VALID [2022-02-20 23:46:58,861 INFO L290 TraceCheckUtils]: 12: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,862 INFO L290 TraceCheckUtils]: 10: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,863 INFO L290 TraceCheckUtils]: 9: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 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: L543 {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 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: L542 {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,865 INFO L290 TraceCheckUtils]: 6: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,866 INFO L290 TraceCheckUtils]: 4: Hoare triple {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,866 INFO L290 TraceCheckUtils]: 3: Hoare triple {29669#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {29901#(or (not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0)) (= |ULTIMATE.start_main_~x~0#1.base| 0))} is VALID [2022-02-20 23:46:58,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {29669#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {29669#true} is VALID [2022-02-20 23:46:58,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {29669#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {29669#true} is VALID [2022-02-20 23:46:58,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {29669#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(12, 2); {29669#true} is VALID [2022-02-20 23:46:58,867 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:46:58,867 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1049392346] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:46:58,868 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:46:58,868 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 17 [2022-02-20 23:46:58,868 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [604060854] [2022-02-20 23:46:58,868 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:46:58,869 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 23:46:58,869 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:46:58,869 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:46:58,936 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:46:58,937 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:46:58,937 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:46:58,937 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:46:58,937 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=200, Unknown=1, NotChecked=28, Total=272 [2022-02-20 23:46:58,937 INFO L87 Difference]: Start difference. First operand 246 states and 284 transitions. Second operand has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:47:00,005 INFO L93 Difference]: Finished difference Result 301 states and 338 transitions. [2022-02-20 23:47:00,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:47:00,005 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 23:47:00,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:47:00,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 158 transitions. [2022-02-20 23:47:00,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 158 transitions. [2022-02-20 23:47:00,007 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 158 transitions. [2022-02-20 23:47:00,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:47:00,094 INFO L225 Difference]: With dead ends: 301 [2022-02-20 23:47:00,094 INFO L226 Difference]: Without dead ends: 301 [2022-02-20 23:47:00,095 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 78 SyntacticMatches, 2 SemanticMatches, 23 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=125, Invalid=430, Unknown=1, NotChecked=44, Total=600 [2022-02-20 23:47:00,095 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 200 mSDsluCounter, 613 mSDsCounter, 0 mSdLazyCounter, 466 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 200 SdHoareTripleChecker+Valid, 684 SdHoareTripleChecker+Invalid, 672 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 466 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 193 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:47:00,095 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [200 Valid, 684 Invalid, 672 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 466 Invalid, 0 Unknown, 193 Unchecked, 0.3s Time] [2022-02-20 23:47:00,096 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 301 states. [2022-02-20 23:47:00,097 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 301 to 246. [2022-02-20 23:47:00,098 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:47:00,098 INFO L82 GeneralOperation]: Start isEquivalent. First operand 301 states. Second operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,098 INFO L74 IsIncluded]: Start isIncluded. First operand 301 states. Second operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,098 INFO L87 Difference]: Start difference. First operand 301 states. Second operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:47:00,101 INFO L93 Difference]: Finished difference Result 301 states and 338 transitions. [2022-02-20 23:47:00,102 INFO L276 IsEmpty]: Start isEmpty. Operand 301 states and 338 transitions. [2022-02-20 23:47:00,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:47:00,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:47:00,102 INFO L74 IsIncluded]: Start isIncluded. First operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 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 301 states. [2022-02-20 23:47:00,102 INFO L87 Difference]: Start difference. First operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 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 301 states. [2022-02-20 23:47:00,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:47:00,105 INFO L93 Difference]: Finished difference Result 301 states and 338 transitions. [2022-02-20 23:47:00,106 INFO L276 IsEmpty]: Start isEmpty. Operand 301 states and 338 transitions. [2022-02-20 23:47:00,106 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:47:00,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:47:00,106 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:47:00,106 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:47:00,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 246 states, 235 states have (on average 1.2) internal successors, (282), 245 states have internal predecessors, (282), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 246 states to 246 states and 282 transitions. [2022-02-20 23:47:00,120 INFO L78 Accepts]: Start accepts. Automaton has 246 states and 282 transitions. Word has length 43 [2022-02-20 23:47:00,120 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:47:00,120 INFO L470 AbstractCegarLoop]: Abstraction has 246 states and 282 transitions. [2022-02-20 23:47:00,120 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 4.882352941176471) internal successors, (83), 17 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:47:00,120 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 282 transitions. [2022-02-20 23:47:00,120 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-02-20 23:47:00,121 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:47:00,121 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 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:47:00,138 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:47:00,339 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable37,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:47:00,339 INFO L402 AbstractCegarLoop]: === Iteration 39 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 37 more)] === [2022-02-20 23:47:00,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:47:00,340 INFO L85 PathProgramCache]: Analyzing trace with hash -2058655426, now seen corresponding path program 1 times [2022-02-20 23:47:00,340 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:47:00,340 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2044437222] [2022-02-20 23:47:00,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:47:00,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:47:00,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:47:00,506 INFO L290 TraceCheckUtils]: 0: Hoare triple {31106#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(12, 2); {31106#true} is VALID [2022-02-20 23:47:00,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {31106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {31106#true} is VALID [2022-02-20 23:47:00,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {31106#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31106#true} is VALID [2022-02-20 23:47:00,506 INFO L290 TraceCheckUtils]: 3: Hoare triple {31106#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31108#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,507 INFO L290 TraceCheckUtils]: 4: Hoare triple {31108#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {31108#(= |ULTIMATE.start_main_~x~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {31108#(= |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: L539-2 {31109#(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:47:00,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {31109#(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: L541 {31109#(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:47:00,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {31109#(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: L542 {31109#(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:47:00,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {31109#(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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {31109#(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:47:00,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {31109#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31109#(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:47:00,510 INFO L290 TraceCheckUtils]: 10: Hoare triple {31109#(and (= |ULTIMATE.start_main_~x~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; {31109#(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:47:00,510 INFO L290 TraceCheckUtils]: 11: Hoare triple {31109#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31109#(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:47:00,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {31109#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31109#(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:47:00,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {31109#(and (= |ULTIMATE.start_main_~x~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;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; {31110#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {31110#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31110#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,512 INFO L290 TraceCheckUtils]: 15: Hoare triple {31110#(and (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,513 INFO L290 TraceCheckUtils]: 16: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,513 INFO L290 TraceCheckUtils]: 17: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,514 INFO L290 TraceCheckUtils]: 18: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,514 INFO L290 TraceCheckUtils]: 19: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} 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: L542 {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,515 INFO L290 TraceCheckUtils]: 20: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} 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: L543 {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,516 INFO L290 TraceCheckUtils]: 21: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,516 INFO L290 TraceCheckUtils]: 22: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,516 INFO L290 TraceCheckUtils]: 23: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,517 INFO L290 TraceCheckUtils]: 24: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,517 INFO L290 TraceCheckUtils]: 25: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,518 INFO L290 TraceCheckUtils]: 26: Hoare triple {31111#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |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_~first~0#1.offset| 12) 12))} 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: L562 {31112#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,519 INFO L290 TraceCheckUtils]: 27: Hoare triple {31112#(and (not (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~x~0#1.base|)) (= (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 12) (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} 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: L562-1 {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,520 INFO L290 TraceCheckUtils]: 29: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,520 INFO L290 TraceCheckUtils]: 30: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,521 INFO L290 TraceCheckUtils]: 31: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:00,521 INFO L290 TraceCheckUtils]: 32: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31114#(= |ULTIMATE.start_main_#t~mem9#1.offset| 0)} is VALID [2022-02-20 23:47:00,522 INFO L290 TraceCheckUtils]: 33: Hoare triple {31114#(= |ULTIMATE.start_main_#t~mem9#1.offset| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,522 INFO L290 TraceCheckUtils]: 34: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,523 INFO L290 TraceCheckUtils]: 36: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,523 INFO L290 TraceCheckUtils]: 37: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume 0 == main_~x~1#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume main_~x~1#1.base < #StackHeapBarrier; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,524 INFO L290 TraceCheckUtils]: 39: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 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); {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:00,524 INFO L290 TraceCheckUtils]: 40: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31116#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~x~1#1.base|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| (* (- 1) |ULTIMATE.start_main_~x~1#1.offset|)) 0))} is VALID [2022-02-20 23:47:00,525 INFO L290 TraceCheckUtils]: 41: Hoare triple {31116#(and (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~x~1#1.base|) (select |#length| |ULTIMATE.start_main_~first~0#1.base|)) (= (+ |ULTIMATE.start_main_~first~0#1.offset| (* (- 1) |ULTIMATE.start_main_~x~1#1.offset|)) 0))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31117#(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:47:00,525 INFO L290 TraceCheckUtils]: 42: Hoare triple {31117#(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~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31117#(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:47:00,525 INFO L290 TraceCheckUtils]: 43: Hoare triple {31117#(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); {31107#false} is VALID [2022-02-20 23:47:00,526 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:47:00,526 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:47:00,526 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2044437222] [2022-02-20 23:47:00,526 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2044437222] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:47:00,526 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [985429381] [2022-02-20 23:47:00,526 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:47:00,526 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:47:00,527 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:47:00,542 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:47:00,551 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:47:00,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:47:00,754 INFO L263 TraceCheckSpWp]: Trace formula consists of 349 conjuncts, 53 conjunts are in the unsatisfiable core [2022-02-20 23:47:00,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:47:00,769 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:47:00,779 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:47:00,793 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:47:00,824 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:47:00,825 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:47:00,843 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:47:00,844 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:47:00,867 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:47:00,867 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:47:00,886 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:47:00,887 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 22 [2022-02-20 23:47:00,983 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:47:00,983 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:47:01,041 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:47:01,064 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:47:01,091 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:47:01,123 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:47:01,157 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:47:01,253 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:47:01,253 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:47:01,325 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:47:01,400 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 7 treesize of output 3 [2022-02-20 23:47:01,405 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:47:01,477 INFO L290 TraceCheckUtils]: 0: Hoare triple {31106#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(12, 2); {31106#true} is VALID [2022-02-20 23:47:01,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {31106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {31106#true} is VALID [2022-02-20 23:47:01,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {31106#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31106#true} is VALID [2022-02-20 23:47:01,478 INFO L290 TraceCheckUtils]: 3: Hoare triple {31106#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31109#(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:47:01,478 INFO L290 TraceCheckUtils]: 4: Hoare triple {31109#(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); {31109#(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:47:01,479 INFO L290 TraceCheckUtils]: 5: Hoare triple {31109#(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: L539-2 {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,480 INFO L290 TraceCheckUtils]: 6: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L541 {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,480 INFO L290 TraceCheckUtils]: 7: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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: L542 {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,481 INFO L290 TraceCheckUtils]: 8: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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, 4 + main_~x~0#1.offset, 4); srcloc: L543 {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,482 INFO L290 TraceCheckUtils]: 10: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~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; {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,483 INFO L290 TraceCheckUtils]: 11: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,483 INFO L290 TraceCheckUtils]: 12: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)) 0) (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 1))} is VALID [2022-02-20 23:47:01,484 INFO L290 TraceCheckUtils]: 13: Hoare triple {31136#(and (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~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;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; {31161#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 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:47:01,484 INFO L290 TraceCheckUtils]: 14: Hoare triple {31161#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31161#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 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:47:01,485 INFO L290 TraceCheckUtils]: 15: Hoare triple {31161#(and (= |ULTIMATE.start_main_~last~0#1.base| |ULTIMATE.start_main_~first~0#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= (select |#valid| |ULTIMATE.start_main_~last~0#1.base|) 1) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,485 INFO L290 TraceCheckUtils]: 16: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,486 INFO L290 TraceCheckUtils]: 17: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 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: L539-2 {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,487 INFO L290 TraceCheckUtils]: 18: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 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: L541 {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,487 INFO L290 TraceCheckUtils]: 19: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 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: L542 {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,488 INFO L290 TraceCheckUtils]: 20: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 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: L543 {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,489 INFO L290 TraceCheckUtils]: 21: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,489 INFO L290 TraceCheckUtils]: 22: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,490 INFO L290 TraceCheckUtils]: 23: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,490 INFO L290 TraceCheckUtils]: 24: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,491 INFO L290 TraceCheckUtils]: 25: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,492 INFO L290 TraceCheckUtils]: 26: Hoare triple {31168#(and (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|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~last~0#1.base|) 12) 0) (= |ULTIMATE.start_main_~x~0#1.offset| 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_~last~0#1.base, 12 + main_~last~0#1.offset, 4); srcloc: L562 {31202#(and (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|) 12) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} is VALID [2022-02-20 23:47:01,492 INFO L290 TraceCheckUtils]: 27: Hoare triple {31202#(and (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|) 12) 0) (= |ULTIMATE.start_main_~first~0#1.offset| 0))} 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: L562-1 {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:01,493 INFO L290 TraceCheckUtils]: 28: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:01,493 INFO L290 TraceCheckUtils]: 29: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:01,493 INFO L290 TraceCheckUtils]: 30: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:01,494 INFO L290 TraceCheckUtils]: 31: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} is VALID [2022-02-20 23:47:01,494 INFO L290 TraceCheckUtils]: 32: Hoare triple {31113#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) 0) (= (+ |ULTIMATE.start_main_~first~0#1.offset| 12) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31114#(= |ULTIMATE.start_main_#t~mem9#1.offset| 0)} is VALID [2022-02-20 23:47:01,495 INFO L290 TraceCheckUtils]: 33: Hoare triple {31114#(= |ULTIMATE.start_main_#t~mem9#1.offset| 0)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,495 INFO L290 TraceCheckUtils]: 34: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,495 INFO L290 TraceCheckUtils]: 35: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,496 INFO L290 TraceCheckUtils]: 36: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,496 INFO L290 TraceCheckUtils]: 37: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume 0 == main_~x~1#1.offset; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,496 INFO L290 TraceCheckUtils]: 38: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume main_~x~1#1.base < #StackHeapBarrier; {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,496 INFO L290 TraceCheckUtils]: 39: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 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); {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} is VALID [2022-02-20 23:47:01,497 INFO L290 TraceCheckUtils]: 40: Hoare triple {31115#(= |ULTIMATE.start_main_~first~0#1.offset| 0)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31245#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:47:01,497 INFO L290 TraceCheckUtils]: 41: Hoare triple {31245#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (= |ULTIMATE.start_main_~first~0#1.offset| 0) (= |ULTIMATE.start_main_~first~0#1.offset| |ULTIMATE.start_main_~x~1#1.offset|))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31249#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 16 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:47:01,498 INFO L290 TraceCheckUtils]: 42: Hoare triple {31249#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 16 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31249#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 16 (select |#length| |ULTIMATE.start_main_~x~1#1.base|)))} is VALID [2022-02-20 23:47:01,498 INFO L290 TraceCheckUtils]: 43: Hoare triple {31249#(and (= |ULTIMATE.start_main_~x~1#1.offset| 0) (<= 16 (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); {31107#false} is VALID [2022-02-20 23:47:01,498 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:47:01,498 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:47:01,545 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:47:01,545 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 20 treesize of output 24 [2022-02-20 23:47:01,730 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2923 (Array Int Int))) (<= 0 (select (select (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2923) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)))) is different from false [2022-02-20 23:47:01,747 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)))) is different from false [2022-02-20 23:47:01,827 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (let ((.cse0 (store |c_#memory_$Pointer$.offset| |c_ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920))) (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_2923) |c_ULTIMATE.start_main_~first~0#1.base|) (+ |c_ULTIMATE.start_main_~first~0#1.offset| 12)))) is different from false [2022-02-20 23:47:03,265 INFO L356 Elim1Store]: treesize reduction 320, result has 13.3 percent of original size [2022-02-20 23:47:03,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 1 new quantified variables, introduced 5 case distinctions, treesize of input 84 treesize of output 77 [2022-02-20 23:47:03,297 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 80 treesize of output 76 [2022-02-20 23:47:03,309 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 45 treesize of output 41 [2022-02-20 23:47:03,323 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 63 treesize of output 55 [2022-02-20 23:47:03,339 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 51 treesize of output 43 [2022-02-20 23:47:03,381 INFO L290 TraceCheckUtils]: 43: Hoare triple {31256#(and (<= (+ |ULTIMATE.start_main_~x~1#1.offset| 4) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} assume !(4 + main_~x~1#1.offset <= #length[main_~x~1#1.base] && 0 <= main_~x~1#1.offset); {31107#false} is VALID [2022-02-20 23:47:03,382 INFO L290 TraceCheckUtils]: 42: Hoare triple {31256#(and (<= (+ |ULTIMATE.start_main_~x~1#1.offset| 4) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31256#(and (<= (+ |ULTIMATE.start_main_~x~1#1.offset| 4) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:47:03,383 INFO L290 TraceCheckUtils]: 41: Hoare triple {31263#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (<= |ULTIMATE.start_main_~x~1#1.offset| (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31256#(and (<= (+ |ULTIMATE.start_main_~x~1#1.offset| 4) (select |#length| |ULTIMATE.start_main_~x~1#1.base|)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:47:03,383 INFO L290 TraceCheckUtils]: 40: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31263#(and (= |ULTIMATE.start_main_~first~0#1.base| |ULTIMATE.start_main_~x~1#1.base|) (<= |ULTIMATE.start_main_~x~1#1.offset| (+ |ULTIMATE.start_main_~first~0#1.offset| 12)) (<= 0 |ULTIMATE.start_main_~x~1#1.offset|))} is VALID [2022-02-20 23:47:03,384 INFO L290 TraceCheckUtils]: 39: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} 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); {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,384 INFO L290 TraceCheckUtils]: 38: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume main_~x~1#1.base < #StackHeapBarrier; {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,384 INFO L290 TraceCheckUtils]: 37: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume 0 == main_~x~1#1.offset; {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,385 INFO L290 TraceCheckUtils]: 36: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} assume !(main_~y~1#1.base != main_~x~1#1.base || main_~y~1#1.offset != main_~x~1#1.offset); {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,385 INFO L290 TraceCheckUtils]: 35: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} main_~y~1#1.base, main_~y~1#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,385 INFO L290 TraceCheckUtils]: 34: Hoare triple {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~x~1#1.base, main_~x~1#1.offset, 4); srcloc: L570 {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,386 INFO L290 TraceCheckUtils]: 33: Hoare triple {31289#(<= 0 |ULTIMATE.start_main_#t~mem9#1.offset|)} main_~first~0#1.base, main_~first~0#1.offset := main_#t~mem9#1.base, main_#t~mem9#1.offset;havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {31267#(<= 0 |ULTIMATE.start_main_~first~0#1.offset|)} is VALID [2022-02-20 23:47:03,386 INFO L290 TraceCheckUtils]: 32: Hoare triple {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~first~0#1.base, 12 + main_~first~0#1.offset, 4); srcloc: L569 {31289#(<= 0 |ULTIMATE.start_main_#t~mem9#1.offset|)} is VALID [2022-02-20 23:47:03,387 INFO L290 TraceCheckUtils]: 31: Hoare triple {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume !!(main_~first~0#1.base != 0 || main_~first~0#1.offset != 0);main_~x~1#1.base, main_~x~1#1.offset := main_~first~0#1.base, main_~first~0#1.offset; {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:47:03,387 INFO L290 TraceCheckUtils]: 30: Hoare triple {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:47:03,387 INFO L290 TraceCheckUtils]: 29: Hoare triple {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:47:03,388 INFO L290 TraceCheckUtils]: 28: Hoare triple {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} main_~last~0#1.base, main_~last~0#1.offset := main_~x~0#1.base, main_~x~0#1.offset; {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:47:03,388 INFO L290 TraceCheckUtils]: 27: Hoare triple {31309#(forall ((v_ArrVal_2923 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} 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: L562-1 {31293#(<= 0 (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))} is VALID [2022-02-20 23:47:03,389 INFO L290 TraceCheckUtils]: 26: Hoare triple {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} 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: L562 {31309#(forall ((v_ArrVal_2923 (Array Int Int))) (<= 0 (select (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} assume !(main_~first~0#1.base == 0 && main_~first~0#1.offset == 0); {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,391 INFO L290 TraceCheckUtils]: 23: Hoare triple {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,397 INFO L290 TraceCheckUtils]: 21: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31313#(forall ((v_ArrVal_2923 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,401 WARN L290 TraceCheckUtils]: 20: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} 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: L543 {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is UNKNOWN [2022-02-20 23:47:03,403 INFO L290 TraceCheckUtils]: 19: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} 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: L542 {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,406 WARN L290 TraceCheckUtils]: 18: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is UNKNOWN [2022-02-20 23:47:03,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,414 INFO L290 TraceCheckUtils]: 15: Hoare triple {31348#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31329#(forall ((v_ArrVal_2923 (Array Int Int)) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| v_ArrVal_2920) |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_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12))))} is VALID [2022-02-20 23:47:03,414 INFO L290 TraceCheckUtils]: 14: Hoare triple {31348#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31348#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is VALID [2022-02-20 23:47:03,416 WARN L290 TraceCheckUtils]: 13: Hoare triple {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |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; {31348#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~last~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~first~0#1.base|) (+ |ULTIMATE.start_main_~first~0#1.offset| 12)))))} is UNKNOWN [2022-02-20 23:47:03,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} assume !(0 != main_#t~nondet5#1);havoc main_#t~nondet5#1; {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:47:03,417 INFO L290 TraceCheckUtils]: 11: Hoare triple {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647; {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:47:03,418 INFO L290 TraceCheckUtils]: 10: Hoare triple {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} main_~y~0#1.base, main_~y~0#1.offset := 0, 0; {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:47:03,420 INFO L290 TraceCheckUtils]: 9: Hoare triple {31368#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (<= 0 (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_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |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_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} SUMMARY for call write~int(0, main_~x~0#1.base, 8 + main_~x~0#1.offset, 4); srcloc: L544 {31355#(forall ((v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0)) (<= 0 (select (select (store (store (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store |#memory_$Pointer$.offset| |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|)))))} is VALID [2022-02-20 23:47:03,424 INFO L290 TraceCheckUtils]: 8: Hoare triple {31372#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 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: L543 {31368#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int)) (or (<= 0 (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_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |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_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} is VALID [2022-02-20 23:47:03,426 INFO L290 TraceCheckUtils]: 7: Hoare triple {31376#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2911 Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 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: L542 {31372#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} is VALID [2022-02-20 23:47:03,427 INFO L290 TraceCheckUtils]: 6: Hoare triple {31380#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2908 Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2911 Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2908) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2908) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 16 + main_~x~0#1.offset, 4); srcloc: L541 {31376#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2911 Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} is VALID [2022-02-20 23:47:03,428 INFO L290 TraceCheckUtils]: 5: Hoare triple {31384#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} SUMMARY for call write~$Pointer$(0, 0, main_~x~0#1.base, 12 + main_~x~0#1.offset, 4); srcloc: L539-2 {31380#(forall ((v_ArrVal_2915 Int) (v_ArrVal_2923 (Array Int Int)) (|v_ULTIMATE.start_main_~x~0#1.base_50| Int) (v_ArrVal_2908 Int) (v_ArrVal_2920 (Array Int Int)) (|ULTIMATE.start_main_~last~0#1.offset| Int) (v_ArrVal_2911 Int) (v_ArrVal_2913 Int)) (or (<= 0 (select (select (store (store (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2908) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base| (store (select (store (store |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base| (store (store (store (store (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~x~0#1.base|) (+ 16 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2908) |ULTIMATE.start_main_~x~0#1.offset| v_ArrVal_2911) (+ |ULTIMATE.start_main_~x~0#1.offset| 4) v_ArrVal_2913) (+ 8 |ULTIMATE.start_main_~x~0#1.offset|) v_ArrVal_2915)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2920) |ULTIMATE.start_main_~x~0#1.base|) (+ |ULTIMATE.start_main_~last~0#1.offset| 12) 0)) |v_ULTIMATE.start_main_~x~0#1.base_50| v_ArrVal_2923) |ULTIMATE.start_main_~x~0#1.base|) (+ 12 |ULTIMATE.start_main_~x~0#1.offset|))) (not (= (select |#valid| |v_ULTIMATE.start_main_~x~0#1.base_50|) 0))))} is VALID [2022-02-20 23:47:03,428 INFO L290 TraceCheckUtils]: 4: Hoare triple {31384#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} assume !(main_~x~0#1.base == 0 && main_~x~0#1.offset == 0); {31384#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:47:03,429 INFO L290 TraceCheckUtils]: 3: Hoare triple {31106#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(20);main_~x~0#1.base, main_~x~0#1.offset := main_#t~malloc4#1.base, main_#t~malloc4#1.offset;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {31384#(not (= (select |#valid| |ULTIMATE.start_main_~x~0#1.base|) 0))} is VALID [2022-02-20 23:47:03,429 INFO L290 TraceCheckUtils]: 2: Hoare triple {31106#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {31106#true} is VALID [2022-02-20 23:47:03,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {31106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~malloc6#1.base, main_#t~malloc6#1.offset, main_#t~mem7#1.base, main_#t~mem7#1.offset, main_#t~mem8#1.base, main_#t~mem8#1.offset, main_#t~nondet5#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~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1.base, main_#t~mem11#1.offset, 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_~first~0#1.base, main_~first~0#1.offset := 0, 0;main_~last~0#1.base, main_~last~0#1.offset := 0, 0; {31106#true} is VALID [2022-02-20 23:47:03,429 INFO L290 TraceCheckUtils]: 0: Hoare triple {31106#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(12, 2); {31106#true} is VALID [2022-02-20 23:47:03,430 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 10 not checked. [2022-02-20 23:47:03,430 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [985429381] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:47:03,430 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:47:03,430 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 16] total 32 [2022-02-20 23:47:03,431 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [238656746] [2022-02-20 23:47:03,431 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:47:03,431 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 3.5625) internal successors, (114), 33 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) Word has length 44 [2022-02-20 23:47:03,432 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:47:03,432 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 33 states, 32 states have (on average 3.5625) internal successors, (114), 33 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:47:03,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 106 inductive. 0 not inductive. 8 times theorem prover too weak to decide inductivity. [2022-02-20 23:47:03,536 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-02-20 23:47:03,536 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:47:03,536 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-02-20 23:47:03,537 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=729, Unknown=36, NotChecked=174, Total=1056 [2022-02-20 23:47:03,537 INFO L87 Difference]: Start difference. First operand 246 states and 282 transitions. Second operand has 33 states, 32 states have (on average 3.5625) internal successors, (114), 33 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:47:09,319 WARN L228 SmtUtils]: Spent 5.46s on a formula simplification. DAG size of input: 41 DAG size of output: 36 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)